XenBlog + XenCMS: It's already here!

Tigratrus

Well-known member
Well... Mostly ;)

I've spent years thinking about ways to tightly integrate Blogs and CMS systems into a forum based site. This morning a final piece of the puzzle fell into place, and I'd like to get some feedback from others before making it into a "Suggestion."

Basically, BOTH The CMS and the Member Blogs should be nothing more, or less, than a different VIEW (in the MVC sense) of the existing community content (forums). Building a separate parallel system which stovepipes user content is counter productive, presents a unnecessary barrier to user adoption, and fragments the community.

The solution to both a native XF CMS and a native XF Member Blogging solution is essentially:

An extended XenPorta. Let's hear it for Jaxel! :)

Let me explain.

XenCMS

With the "Promote Thread" functionality Jaxel has already implemented, XenPorta can act right now as quite a good CMS using the forum system to store the articles. About the only thing that's missing is the ability to provide category pages that show a chronological list of "Articles" in a given category.

Category pages could be handled one of two ways (off the top of my head):
  1. Each category == an existing forum name. That ties in directly with your communities existing content structure, so it prepares newcomers arriving via the home page for the community forum structure.
  2. When "Promoting" a thread from the community forums to the home page, you specify a matching category for that "article."
In both cases, clicking on the category name brings up a page that functions identically to XenPorta, except it has a filter that shows only articles that match the appropriate category. If these category pages have the ability to have their own module configuration/layout, you now have the ability to (very easily!) craft customized landing pages for various topic areas of your site. Each of which will be dynamically updated with topically appropriate "articles" simply by promoting threads from the forums. How do you add custom crafted articles with in depth info? By doing what you should be already doing in the first place...creating really GOOD threads in your forum system!

Basically each category page acts as a separate WP style blog (displaying carefully selected content from the forums), and the homepage acts as an aggregator (showing all selected content in all categories).

XenBlog

Building on the existing XenPorta functionality we use a single forum to hold all "Member Blog" OP's and present them in a member specific manner. Basically XenPorta, but with the "RecentNews" module set to pull from the designated "Blog" forum (Project Blogs in the example below) with a filter to only pull threads started by the member whose "Blog" you are visiting.

Example:

Let's say you have a DIY forum, and you have a forum named "Project Blogs" where your members chronicle their projects. Now I can either go to "Project Blogs" and create a new thread there, or I can click "My Blog" in the site Nav menu to go to my "Blog" (www.domain.com/blogs/tigratrus) then click a "New Post" button to create a new blog entry. In both cases the results are identical:

A thread is created in "Project Blogs" sharing with the community whatever I want to share. A new "Post" shows up in Tigratrus' Blog showing the first 400 (or whatever you have the excerpt set to) characters of the OP followed by a "Read More..." link to the thread and a note that there are "X" comments (which are actually replies to the thread).

POOF! :)

Now it's super easy to keep up with all the details of an individual blog you want to follow, just go to that member's "Blog" page. In fact, it might make sense to merge this functionality with the existing user profile.

In addition there's a single place to go to see an activity stream of ALL Member blogs: The Project Blogs.

As an added benefit, it's perfect for the many existing forums that have a thread based blogging tradition already. Nothing has to change, this just gives them a better interface.

Conclusion

Forums... Blogs... CMS Articles. They are all basically the same thing, User Generated Content, initial post and replies/comments. So let's apply the concepts of MVC design to take the existing content, and present it in different ways to more effectively suit different needs. Google loves blog style home pages, that's why so many large sites go to a WP/Joomla/Drupal CMS homepage. But by taking the creative output of the Admin (and other article writers) and funneling it into "Articles", we deprive the community (forums) of that same creative energy, and also deprive the member of the sense of personal accomplishment that goes with having THEIR content on the home page.

Our communities are all about the people in the forums and their stories. Let's take that energy, that sense of community and show it to the world directly! Give the internet a fresh "VIEW" of our communities ;)
 
This basic idea is exactly what we've wanted - an easy way for mods and members to submit blogs and to promote the "best of the best" forum posts to articles and blog entries, keeping all the comments and forum discussions in place no matter where the articles (forum/blog/cms) are read.

Ideally, if everything is set up properly this makes it much, much easier for the site owner to generate relevant and timely content.
 
i have tried to explain the simplicity of this to several coders...

explaining the true FUNCTIONALITY is already in the forum...you simply are making a new interface for specific functions

no module should be over complicated to make
 
No, it's not sooo easy as you think!
It's not just "create an other view" and you have a gallery or blog;)

Ironically i'm working on an article system using own content types, nodes,searchhandler etc....
Then you can see it in action^^
Ragtek,

Can you clarify why you say that? Read through the OP, and tell me specifically why that wouldn't work as both a CMS and a Blog system? I'd appreciate your feedback! I'm not saying it's literally a single "view" and done, I'm talking about the design philosophy of simply using a different UI to present the same content in different formats. In both cases the different "View" only deals with the excerpt, linking back to the thread for the full writeup. I've thought about this a lot, and laid out exactly how Member Blogs and CMS could be done.

I've got a lot of practice in writing Articles for both Joomla! and WordPress systems used as a CMS frontend for vB websites. IME the only thing that we're missing in the Forum editor currently is the ability to set H2 tags for section headings in the article, and that should be any easy enough fix. Separate content types, custom fields aren't necessary in the vast preponderance of cases. If you're building a services/business directory or a classifieds system, sure, but not for Articles and Blogs.

I would VASTLY rather have the articles IN the relevant forum, where the majority of the community can benefit from it and get involved discussing it rather than in a separate "Article" system that removes a lot of your best content from the forums. Better SEO as it leads all search traffic directly into the heart of the site, the forums.
 
I wanted to write it, but then i stopped because of my bad english;)

But, as you said already, it's because of:
Separate content types, custom fields aren't necessary in the vast preponderance of cases. If you're building a services/business directory or a classifieds system, sure, but not for Articles and Blogs.
IF i have a cms, i want a REAL cms, and not only threads with an other view!
You need to store much more data as the author and the text.

Yea, of course it's possible, but this would be IMHO very quick and dirty.

For example, i need an teasertext (for short descriptions of the page), i need own "sponsor fields", with an "special output",etc....

Also you would need to "hack" many things (search, permissions, etc..), which is IMHO unneccessary, if you use real content/node types.
Why not let the xenforo framework do the work for you, instead of "manipulating" the normal code & output...


For example,how would you search for an text/for all articles from an author in the cms?
You would need to use the thread search and preselect only the forumids which belongs to the cms, right?
That's ugly hacking:p

How could the author set read permission?

Also what would you make, if you need more "page/article states" /threads have 3 message states => visible, moderated, deleted.
But a real cms/articlesystem have much more (visible,moderated,deleted, need review,in progress)

Because of the blog:
How would you do this?
Would every user get his own node, where he would have the permissions, to create threads(blog articles) and nobody else?

You need for this things OWN permission rules..

(hope you know what i mean)..
 
I wanted to write it, but then i stopped because of my bad english;)

But, as you said already, it's because of:

IF i have a cms, i want a REAL cms, and not only threads with an other view!
You need to store much more data as the author and the text.

For example, i need an teasertext (for short descriptions of the page), i need own "sponsor fields", with an "special output",etc....

Also you would need to "hack" many things (search, permissions, etc..), which is IMHO unneccessary, if you use real content/node types.
Why not let the xenforo framework do the work for you, instead of "manipulating" the normal code & output...


For example,how would you search for an text/for all articles from an author in the cms?
You would need to use the thread search and preselect only the forumids which belongs to the cms, right?
That's ugly hacking:p

How could the author set read permission?

Also what would you make, if you need more "page/article states" /threads have 3 message states => visible, moderated, deleted.
But a real cms/articlesystem have much more (visible,moderated,deleted, need review,in progress)

Because of the blog:
How would you do this?
Would every user get his own node, where he would have the permissions, to create threads(blog articles) and nobody else?

You need for this things OWN permission rules..

(hope you know what i mean)..

Good response, and I DO understand what you mean but I'm not sure you really understood how I was saying the Blogs system would work. There is also a fundamental difference in the required features of the CMS side.

CMS:

You assume that most sites will actually use more information for articles than Author, Text and pictures. Having used a number of CMS systems I can honestly say that unless you are using a CMS for to handle versioning, revisions and an approval process (like an paper magazine would do), you really don't need more than the basic content, displayed in a regular format, with a good image in the corner and a link to the full length article. Pagination is a waste, it irritates web visitors that are used to scrolling.

As for permissions, the whole point is that all the content creation, editing and final selection happens in the forum itself. Once the OP of the thread is setup correctly for publishing to the homepage I.E. editorial pass is done, grammer/spelling clean and text broken up into appropriate sections with H2 tags for the section headings, it's simply a matter of the Admin/Publisher clicking the "Promote" button. You CAN specify read more link text in Xen Porta currently, and if you really wanted to do a separate teaser section instead of just the first XXX characters of the OP, it would be a simple matter to add a varchar field in the EWRporta_promotes table and gather it via a popup.

Please understand, I'm not talking about a CMS system for the theoretical publishing model that a company like The New York Times would use :), I'm talking about a CMS for real life websites run by the VAST majority of people here. The vast majority of sites do NOT have a staff that have a sophisticated approval and editing process that they go though. The admin either writes the article themselves, or they hire someone to write an "Article" of a certain word length and they put it in queue for publishing on a given date. For the way a CMS is used in conjunction with the vast majority of community and niche sites, SIMPLE and easy to use is vastly more beneficial IMO.

How would you search for all articles? Simple, add a field to EWRporta_promotes table to hold the Author's userid then build a single query that populates a tab on the member's profile. Poof! XenPorta already links the author's name to their XF popup id card.

Blog:

I'm not sure if you read through the whole section I wrote in the OP about exactly how the blogs would be implemented? I covered all that. :)

There would be a single forum that would hold all "Blog" posts and would also serve as an activity stream. The Blog page for each member would just be a customized version of XenPorta that you access by clicking on the link in a member's profile, the link in their member popup ID card, or by going to the Member Blog homepage and clicking on one of their blog posts that was currently showing on the Member Blog Homepage (www.domain.com/community/blogs) that would take you to the individual's blog (www.ikeafans.com/community/blogs/a-process-of-improvement) <- this would be my blog if I title it "A Process Of Improvement"

Each member blog page would be a customized version of XenPorta. The Blog owner would have the ability to select and place modules where they wanted them. In the central content area would be the existing RecentNews module, hard coded to show only excerpts of thread OPs from the designated "blog" forum where the thread starter = the user who's "Blog" page you are currently viewing.

The Member Blog home page (www.domain.com/community/blogs) would again be a XenPorta instance that the site admin has configured. The central content area would be a RecentNews module set to show excerpts from the designated "blogs" forum. So you would get a member blog aggregator page much like: http://wordpress.com/ .

There would be NO problems with permissions etc as the entire thing would be handled by the existing forum infrastructure.

You raised some good questions, hopefully I answered them? If not let me know what's not clear, it's invaluable to get other peoples perspective! :)
 
Building a separate parallel system which stovepipes user content is counter productive, presents a unnecessary barrier to user adoption, and fragments the community.

Well, you've said it all in just 1 single sentence.

For years (a certain coder started working on it already 9 (yes.., n.i.n.e !!!) years ago) I have wanted and badly needed a CMS that was tightly integrated into vBulletin. Hopes were high when Internet Brands' vBulletin finally came out with a CMS. Well... let's not comment on that. But what I do want to say is that when I saw this 'CMS' getting used on vBulletin.com, that after a few months I was thinking when I searched for some information: oh my... where o where did I read this and this a few weeks ago? Was this in a forum posting? Was this in a CMS article or was it indeed somewhere in a Blog?! Okay, there's the Search-functionality to our rescue... (at least it should: but don't get me started on the horrendous vB Search UI!).

Anyway, fragmentation is a serious issue indeed. Even if I don't use (yet) a CMS for my own production site, I did offer the vB Blog (on vB 3.8) product to our members. Needless to say it was not much of a success, if at all. Only a handful of our 20.000 registered members use or used it, unfortunately. The biggest reason is in fact that the Blogs are too invisible. You have to click on a little link in the upper menu bar to see them!!! :confused:. In no way whatsoever are new Blog contents served to the end users. Yes, vB4 solved this a bit by introducing a side bar with blog feeds. Unfortunately vB3.8 doesn't come with such a sidebar/CMS functionality.

Anyway, even those people who write Blogs on our platform don't get the exposure they would get if they would have posted their blog entries on one of our forums. People love to have comments on their Blog articles, but if no-one is gonna take the effort to post a comment, people will eventually leave their Blog and just return to the vivid/lively forums where they get instant comments on whatever they post there. I think this is the difference: when you have your own external Wordpress Blog on your own domain for example, you don't expect (depending on the situation/goal/person) to have so much comments/exposure and people are quite happy to post there without so much the need/wish for pages of comments. Because they have an isolated Blog to begin with. But how different is this when you are used to your good old trusted forum where thousands of people are active? When a board admin introduces Blogs on such a forum platform, then people who would like to use that have expectations, based on the forum activity they are used to for years. If no-one is gonna to interact with them on their Blog, the good old active forums are just 1 single sec. around the corner and they simply leave their blog behind. In my eyes: a forum-platform is based on interactivity. One has got to wonder if a (invisible) Blog on a separate parallel system adds to that goal?

The same goes for CMS Articles: my forum members want (and expect others) to post articles in our forums and comment on them there. In my experience they are much less interested/motivated to comment on articles that are presented in a separate CMS homepage... so why would I want to remove this valuable articles and comments from our lively/high traffic forums indeed?

Now, if we could only find a way that supports/stimulates this same interactivity when it comes to Blogs and CMS Articles on a Forum platform. I believe you have just showed us the way.
 
Or why not just create a forum that says "Articles" with sub-forums which are the category types. That's basically using the forums themselves as a CMS. Has the same type of content plus member interactivity and is easy to find and read. Also, because the content is IN THE FORUM it gets people talking and makes them feel like a part of the community instead of being orphaned in the CMS area. Any thoughts?
 
Some of us would like to use a cms instead to have it all in the forum. Thats the point in this discussion ;)
And there are options already available to do that via WordPress or Joomla!. :)

The point I'm trying to make is that all the content is in a database anyway. The key is presenting that content in different ways to make it fill different needs.
Obviously, different people are going to want different things. Not all communities are the same, nor are the admins! But having USED several different CMS systems over the years as the front end to a forum/community site I've learned the following things:

  1. Simplicity is key. If a system is too complex it won't be used.
  2. The greatest value in many UGC sites is... Amazingly enough, the User Generated Content. Being able to simply do an editing pass on that content and instantly schedule it for publication on the home page will make for a better rate of publication of meaningful articles, which google loves.
  3. Taking the creativity needed for really good articles out of the community and putting it into a separate system is a major negative for the community.
  4. If the Forums/Community is the heart of the site, than the homepage should be about showcasing that community in a way that presents meaningful content on the homepage, NOT a bunch of links to latest threads. You want the search engines to go into the forums and dig into the deep content there.
  5. Most "Real" CMS systems are drastic overkill for what a community site needs. It's not just a case of more capability being better. It's about focusing the efforts of the admins/article authors and your community in the areas where they will have the greatest net effect.
  6. ANY stovepiped system fragments the community's attention/interaction and thus reduces the rewards for participation of your community members and frequently confuses new visitors.
Susan and I have been down this road before. We've seen exactly what happens when you implement blogs, a CMS etc. For US, and probably for the vast majority of sites that are predominantly a community/forum system: Building the CMS, Blogs etc as an EXTENSION of the forum system rather than a tacked on separate system is far better for the community, simpler and easier to understand and use for visitors and better for SEO.

Obviously YMMV, I've outlined the solution above as the result of a LOT of painful personal experience and trying of many different options. There would be nothing, hacked up or cobbled together about it, it would present a single UNIFIED solution that ties all content generation into the same system. It would be an elegant solution to a complex set of problems. :)

But as I said above, not every solution is right for all situations. We thought blogs on a forums site would be a great idea several years ago, and almost lost the critical mass of community interaction. This way they could be a benefit to the community interaction instead of fragmenting the community. And the CMS could help FUEL the community instead of diverting the time and energy of the admin/article authors.
 
Or why not just create a forum that says "Articles" with sub-forums which are the category types. That's basically using the forums themselves as a CMS. Has the same type of content plus member interactivity and is easy to find and read. Also, because the content is IN THE FORUM it gets people talking and makes them feel like a part of the community instead of being orphaned in the CMS area. Any thoughts?
You could do that.

I think it loses some of the benefit if you put all the articles in a single big pile. IMO, your articles should cover the range of topic areas that your community does. And your forum structure should follow your topic areas as well. So, if you have individual forums that cover each of your site's topic areas, the obvious place (for me) for the articles for that topic, would be in the forum that covers that topic. That makes much more sense to the average visitor, and would bring the search engine following the link to a given article directly into a forum that covers all the other aspects of that general topic. That's very good white hat SEO.

IMO articles should be showcase content that sparks discussion and creativity within the group of members that frequent a given forum. Putting them all in a single "articles" forum would totally lose that synergy.

Good conversation going here, lots of great discussion and feedback! :)
 
Top Bottom