I’ve been promising a real-world example of what’s possible with custom post types for a while. But, I didn’t want to put together yet-another-long-technically-detailed post. I wanted to give you something that would open your mind to the possibilities.
And, there’s loads of possibilities.
I’ve been tinkering around with the idea of building a forum plugin, so I decided to get behind the project completely and make it happen. What started out as a simple project quickly turned into something that a lot of people have been wanting — a forum plugin that fully integrates itself within WordPress.
Post types for the plugin
The plugin uses three post types for handling the structure:
- Forums: This is your top level, which holds everything else.
- Topics: Children of forums and use the topic tags taxonomy.
- Replies: These are the individual posts made within a topic.
I had originally taken a different route of using a forum taxonomy, topic post type, and reply comment type. However, using that structure had major limitations.
The benefits of using three post types are numerous. Here are some examples:
- Forums can have metadata (custom fields) and media attachments added to them to allow a lot of cool stuff (forum thumbnails, for example).
- You get pretty permalinks using a reply post type (
forums/topic-name/page/2). - Replies can also have their own media attachments (user-uploaded images).
- Capabilities/permissions are handled a lot better with post types.
- Can set up custom post statuses such as “closed” and use the current statuses like “private.”
- Works well with plugins that allow you to edit from the front end of the site.
This is not to say there aren’t issues with this method. There’s a lot of custom work work that needed to be done, which isn’t surprising considering I’m using custom post types.
I can’t take all the credit for this idea of using three post types. John James Jacoby convinced me this was the best route to go.
Taxonomies for the plugin
The only taxonomy used by default is the topic tag taxonomy. It allows users to assign tags to specific topics.
The great thing about the plugin though is that you can build custom taxonomies on top of it. You can give forums, topics, and replies their own taxonomies if you wanted. Since we’re using custom post types for those things, the possibilities are endless.
Integration with WordPress
Obviously, we want our forum plugin to work well with WordPress. Some of the current problems users of other forum software are facing when integrating are:
- Separate user login pages (and separate user database tables in some cases).
- Separate roles and permissions setups.
- Using multiple themes to get the same design across the site.
- Not being able to use WordPress plugins within the forum.
- Having to figure out how “deep integration” works just to use things like menus and widgets.
My plugin seeks to solve those issues and use the tools available in WordPress.
Lightweight
I’m not a fan of adding every fancy gizmo and gadget in the world to a forum. I like to keep things simple and extend it with other plugins when I need a new feature. I also don’t want 20 theme templates when I can use a handful.
The biggest goal I have is to keep this thing as lightweight as possible. There are over 10,000 plugins for WordPress that will allow this plugin to be extended.
What about the bbPress plugin?
While this is outside the scope of what I’d planned on writing about, I know questions about bbPress will crop up. I’ll try to address those.
It’s true that bbPress will be becoming a plugin in the future and work has already started on it. I’m happy that there’s at least something happening. I love bbPress and have been using it for years, but I can’t wait around six or seven months again to see where the project is headed. I’m not saying bbPress isn’t going anywhere, but I had to make the decision to move forward on my own after the last disappointment.
I’d love to be involved in the bbPress plugin project at some point, but my priorities right now don’t mesh well with it. It’d also be great if the ideas used in my plugin or any of its code gets used in the bbPress plugin.
One thing I will promise to plugin users is that I’ll try to make it as easy as possible to switch between either plugin if that’s what they choose to do.
Demo and testing
The plugin isn’t ready for a public release right now. There’s tons of work still ahead. But, testing does need to be done on a large enough scale for me to make this a solid plugin.
I’ve put the plugin on one of my own sites for live testing. If you have any interest in this plugin at all or just want to help test, please register for my forums at Pop Critics.

Wow! Never thought of this as a use for post types, but it surely makes a lot of sense.
BTW, what happened to Kirby Junior?
Yeah, they can be used for all kinds of things.
As for Kirby Junior, I just needed something fresh and different. If I had the time, I’d change my design every month.
Well, this one is ten thousand times prettier, so it was a good choice.
I’m glad you like it. It is available for download from Theme Hybrid.
Justin, this looks really nice and I went over to Pop Critics to check it out as well. How long until you think it may be released? Will there be a cost?
I’d like to have at least some sort of beta released in the next month, but I can’t say for certain. I just have to see how it goes.
As for cost, it’ll be free to download.
I am looking forward to the plugin. I can’t remember how I found your site, but I have read via RSS since I found it. Thanks.
Cool plugin – just in time! I have been looking for someone to get this done or I would be waiting for bbPress to get into a plugin. I hope it will be available of download soon. And yes, I would love to be a beta tester.
Wow, would be pleasant to see that opened.
Pretty amazing the level of design simplicity that it was made.
Liked heeps the idea..
folowing on…
Hey Justin, this is amazing! I was expecting a “yet-another-long-technically-detailed post”
Hopefully you will? post it later..
I’m using custom post types as a Q&A section of the site: http://incomejunkie.com/questions/ (usr:usr123) and it works pretty well. I’m still dealing with the deletion of the questions published by the authors.. and some other workarounds that I’d love to implement, but this custom post types thing is a really sweet addition to WP.
Keep on the great work! (We need to learn more and more from you).
Thanks
Chocks
Also, as you said I’m using scribu front-end-editor which rocks.
Well, this one’s a bit too complex for a tutorial (unless I want to do about 10 parts). I’ve got some other ideas planned for tutorials though.
Your Q&A section looks like an awesome use for post types.
This rocks *hugely*. Can’t wait to test the plugin.
I actually owe you a little credit for some of the work.
Congrats on this so far Justin, looks very promising!
Would love to be able to help out in any way – are you going to do a trac with tickets for fixes and patches etc?
@joss
I guess when this plugin will be released on wordpress codex, it will get an entry on wordpress trac automatically.
My next plugin — a ticket system for WordPress.
Honestly, what I really need is people to just use the demo. Having real-world testing is the most important thing at this stage.
Don’t reinvent the wheel, just try WATS : wordpress advanced ticket system
Hey Justin,
I’ve got a couple of real-world uses I could put your plugin to. If you’re still looking for real-world beta testing + solid feedback, I’m happy to give it a go.
Matt sort of hinted at something like this for wordpress instead of bbpress. I think this works a lot better than bbpress. I can see how things work easier, say cookies and everything is in one dashboard.
I see this going and then there needing to be plugins for this plugin.
Good WORK!
There’ll definitely be a need for additional plugins to extend it. I’ve already got a couple in mind that could come in handy (private messaging, for instance).
Justin, your WordPress skills never cease to amaze me.
I just got done converting an SMF forum to bbPress. I am a newbie to bbPress but I like it’s minimalistic feel and I LOVE WordPress so I figured what the heck. I, too, read about the news of bbPress being converted to a plugin for WordPress.
I’m really curious as to what benefits you see in a plugin for WordPress that uses custom post types over a standalone bbPress. I read your points above but I am unsure about how I feel on the matter.
Thanks!
Looking at one method over another is probably the wrong way to look at things. Rather, I’d ask what each method offers that benefit your needs. Some people may be fully satisfied with a standalone forum script.
The two biggest benefits for me are: 1) complete control of users, roles, and permissions under one roof and 2) the ability to use a single theme across both the forum and the other parts of the site. Others might enjoy only having a single software installation to worry about or the ability to use WordPress plugins with their forum.
@Josh
I’d be interested in any tools or tips in converting a SMF forum to bbPress.
Thanks in advance.
Justin,
Are you spying on me? Just kidding!
You won’t believe but today morning I discussed exactly same concept with my fellow developers.
And I reached home an hour back and started to setup a new wordpress+bbpress on my localhost to see how tough is to get bbPress integrated with wordpress! I was in the middle of checking out bbPress from SVN when I accidentally opened my Google Reader and I see your post there….
I am really on cloud 9.
I never thought someone’s wish can be fulfilled at this lightening speed!
Thanks a ton.
-Rahul
Justin,
Opened test account on forum and new plugin is really amazing.
In my sincere efforts to thank you enough, I will contribute import/export module between your forum plugin and bbPress-wordpress plugin whenever later becomes reality in future. We guys are good with importing/exporting data to/from wordpress. We run a service @ bloggertowp and that leaves us with plenty of raw importer/exporter codes.
I don’t see any reason to wait for bbPress now.
By the way can we contribute to this plugin in its current stage?
Thanks again.
-Rahul
Thanks for the offer to provide a importer/exporter. I honestly don’t think it’ll be necessary to convert between the bbPress plugin and this one. The two should be easily interchangeable as far as data is concerned.
Yes, you can contribute. Right now, I need people to give the demo a try and leave a ton of posts. This thing needs to be worn in a little bit.
In such cases, I suggest creating forum on a new subdomain and keeping it open for spammers and bots. It really helped me create lots test-data once for a buddypress project.
Keeping in mind buzz around this project, spammers will love to target demo forum!
I know its not a good idea but I will ask our team to create data as well as tickets once this project goes on track. We have dedicated testers in our company which works on wordpress only!
By the way, I personally feel, in future in bbPress comes to WordPress, this forum plugin and bbPress should be merged. In fact, all “canonical plugins” should remain unique so as to speed-up their feature development.
Off topic – why don’t you use subscribe to comments plugin?
Out standing work Justin. Sucks the timing is off to not have you on board with bbPress, but you’ve got my word and support in incorporating things side by side, and I think that collaborating when we can is by far the best idea.
I definitely think collaboration will be best in the long term and hope I’ll be able to add something to the project in a few months. I’m going to keep a close eye on the progress being made so I can keep things in line with what you guys are doing.
Well, if WP Forums are gonna be rocking.. I’m sure there’s gonna be a bye-bye to Bulletin Boards. After all, We all love WP.
For WordPress users, I sure hope we can get some people to convert over from using other software.
We can create modules for phpBB and vBulletin.
Custom post-types in wordpress 3.0 really made writing this kind of convertors simpler than before.
Really nice work and advanced use of post types and taxonomies.
Can you explain how you handle relations between the 3 post types ?
I have created a music site, and managed to “link” both artists and releases post types, with help of a custom taxonomy.
How did you do it for the forum ?
A forum is the
post_parentof a topic, and a topic is thepost_parentof a reply. Works just like attachments do.Nico, if you want to handle multiple posts to posts relations you can use Posts 2 Posts plugin by scribu. I already use it on two sites…
http://wordpress.org/extend/plugins/posts-to-posts/
Hi Justin I remember a while back I saw a plugin that used custom post types to make a type of forum thing… I’ll try to track it down for you (there was also a front end post plugin by the same author).
Cheers Pete
Found it, it wasn’t a forum it is a classified ad plugin, nether the less it shows another real world example…
http://wordpress.org/extend/plugins/your-classified-ads/
Sorry if this link isn’t appropriate to post… just delete it if you like
Tadlock is as cool as Matlock! (well at least the theme tune!)
Really need to beef up on my custom post types IQ, which currently is non-existent.
Got a question. Not really a “how-did-you-build-it” question, but more of a “how-does-it-handle” question.
I know you’re still working on optimizing the code, but how is performance (as I’ve noticed a bit of slow down when I’m on the PopCritics demo forum site)?
Performance seems to going fine so far, but that’s what I’m trying to get a handle on with the testing period right now. The more people testing, the easier it is to see what areas need to improve.
I love the job you’ve done so far Justin.
For editing, I see that there is a very slick AJAX editor which is accessed by double clicking the post – this is good.
However there is also an “edit” button which yanks you away to a mysterious looking admin panel which doesn’t even slightly resemble the forum. To us WordPress users this feels normal, but to random outsiders this will seem a little weird. It would be best if the non-AJAX editing could be handled on the front-end as well, or if not, then the “edit” button should make use of the AJAX system instead so that users only get shoved off into the admin panel when they don’t have JS running.
The AJAX editor is the Front End Editor plug-in. You can see a topic that directly addresses your comment here:
http://popcritics.com/forums/topics/commentsquestions-for-this-forum-design
I tried breaking the forum by creating a giant super-sized post. It handled a fairly large one, but when it got too big, it simply reloaded the page I was in with no error message given. It might pay to serve an error in that situation so that the user knows what they did wrong.
I’ve found what looks like a bug:
http://popcritics.com/forums/topics/very-cool-forum-plugin#post-9865
My URLs are getting screwed up when I put them inside IMG bbCode tags, whereas they work fine as tags.
I found another bug, this time it’s with the [code] shortcode which is stripping out tags rather than converting them to entities as with most other fourm softwares. This was a bug in bbPress too and is a PITA for many forum users.
http://popcritics.com/forums/topics/i#post-9866
I can't find any way to delete my own post, but I have found a way to make it password protected. I assume that isn't a feature you had intended to add.
http://popcritics.com/forums/topics/i#post-9869
It is also possible to schedule posts for the future which I assume was not intended either:
http://popcritics.com/forums/replies/9870
If you use the search tool, it takes you to the individual post. However, 99.999% of the time people will be wanting to be taken to the anchor link within the topic. So the search tool needs to be adapted to search within a topic instead of using the_permalink() for the individual post. Should be fairly simple I imagine since you are using numbers for each post, just track down the topic, then use the number as the anchor link to target the correct part of the page ... actually, that might get more complex when taking pagination into account.
Another suggest which you may have already thought of:
Users may want to use a slug other than "forums", so a method to allow us to control that would be useful. Preferably via the admin panel.
I actually just wrote a tutorial on how to integrate phpBB and Wordpress. Is this something you considered? Or did you want people to be able to use one login throughout the site?
Link removed by administrator because of its irrelevancy to the topic at hand.
It looks like your article is about modifying a phpBB page to look like a WordPress page. This has very little to do with this project. You could even accomplish a single login with phpBB and WordPress by using yet another third party program, aMember, but this is not the simple solution to adding basic forum features to a WordPress site.
Go back and read the post and I think you will see how integrating a third party forum does not meet the goals of this project.
i just make a new blog, i am a newbie, could you help me how to make a comment form that i can reply my comment reader directly?
You should probably try the WordPress support forums.
I just wanted to add a couple of notes on editor choices for the new forum plugin:
In all the forums that I have investigated, WYSIWYG vs bbCodes is a debated topic, and sometimes the debate is hot. If you use the native WordPress editor with it’s WYSIWYG and shortcode capability, it is possible have best of both worlds, and not present the user with yet another editor.
The built-in WP editor, with it’s ability to support attachments via the gallery, and to resize, thumbnail, crop, align, and caption images, is something that no forum software’s editor and attachment system does or does well. At least the one’s I’ve look at, which is many. The handling of hot linked images almost always has a different set a capabilities for floating, sizing, etc, than image attachments. This presents the user with a confusing inconsistency.
WP’s augmentation of TinyMCE with regards to image handling is even better than any of the WYSIWYG editor demos I’ve seen, much less bbcode editors.
To be sure, the full use of the internal editor would require some attention to security and permissions. When opening up posting to a larger audience as forums do, if HTML is optionally permitted via the WYSIWYG editor, it may be that WP’s filters would need to be supplemented by something like HTMLPurifier, HTMLawed, or Wibble.
There are at least 2 ways that forum content itself is being integrated with the front end, and a forum plugin like yours has hugh potential here. (I’m sure you’re familiar with these).
The first way forum content is integrated is designed to increase forum participation by leading users to the forum section to make comments on front-end articles. It is hoped that once in the forum pages, the user might become an active forum participant. Macrumors .com is one of the many sites that do this.
The other way is designed to let the forums be a factory for front-end articles, with a “Promote to Article” link on the first post of a topic for admins and moderators with proper permissions. Invision Power and vBulletin are doing this.
There are problems with the known implementations of these features — problems, it would seem, that this plug-in could avoid:
1. If the article originated in the front-end and is moved to the forum for commenting purposes, then it is hard to translate into bbcodes. Which is one reason some forums have found it necessary to allow admins to post raw HTML. If the movement is in the other direction, and forum posters use bbcodes, it is very difficult to promote a topic to an article in such a way that it can then be edited with a WYSIWYG editor.
2. The same users may be required to learn and use two different editors – one based on bbcodes and another WYSIWYG. For example, you may give your users their own blog with WP multisite, or let privileged user contribute directly. These same users my be forum contributors.
3. When using the “promote topic to article” capability, the topic and all it’s attachments need to be copied to another post for front-end publishing, so that subsequent changes made by the original author can be re-approved. This is necessary if permissions don’t allow the original author to edit and publish his or her own promoted posts. Perhaps the admin-visible button on the topic could be changed from “Promote to Article” to “Update Promoted Article” or something like that. At any rate, this workflow issue would be much easier to solve if the forum post and the front end post both had the same kind of markup.
In spite of testing several if not most of the popular forum systems, so far I have found no good solutions that would not require an extensive amount of coding to overcome the bbode-wysiwyg mismatch while providing adequate image and attachment handling. From the discussions I’ve seen in the various support forums, I know I’m not the only one. This plugin my be a huge step in the direction of providing this kind of really good integration.
Thanks for listening, and I hope this adds to the discussion.
That was quite long.
I just wanted to know that I’ve read through it all and to thank you for your thoughts.
This is just beautiful. I cannot wait until there is some sort of testing phase, and I can get my hands dirty.
The only thing I’m wondering is if there will be any amount of post synchronizing ability? The ability to have a post appear on the front page, as well as the forum, with one switch.
Perhaps even syncing the comments as well?
Just a thought.
This is something that will live outside of the normal flow of blog posts. Of course, you can pull forum stuff up anywhere on your site. There won’t be any type of “switching” going on though.
Just a clarification of my comment above. I meant the part about promoting a topic to an article to apply to the first post in a topic, and letting the subsequent posts be equivalent to comments. It gets messy quick if you start allowing any post in a topic to be promoted – it causes an overlapping of “comments.” Used this way, comments don’t need to be synced.
You don’t even have to copy or sync to post of another type to promote it if you’re happy with the permissions – you can just mark it a as promoted to front page, promoted to section page, promote dto a “featured” carousel, etc, and perhaps denote an order.
The editor rights could vary – guest comments can only use plain text or simple short codes, register members can use more codes, contributors can use the full WP built-in editor with image / gallery (attachment) capability, etc.
I was thinking about converting my vbulletin site over to a system just like this, using post-types in wp for my forums.
One of my forums has millions of posts already. Exporting the data from vbulletin into a wp forum setup would be possible, but I’m curious what would happen to my wp site if I loaded millions of pages as a forum….
Is wp going to puke all over itself if I try to do this?
I’d try it on a test install first.
Honestly, I was doing a straight XML import about a year ago with some 20,000+ posts and WP crashed about 1/3 of the way through. I just wanted to see if it could be done.
The best course of action would be to transfer to a database on your computer and run a script to change the information within the database. Then, merge this with your WordPress installation.
It’s not really my area of expertise.
Want this !! So cool !!
Really amazing. The much awaited has finally arrived.
I’m looking forward to seeing this released as well. It does sound like a novel approach, and I was wondering whether something like this would appear with custom taxonomies.
Not everyone needs, or wants, a full blown forum installation, and I think that this will be what people are looking for.
Those are my thoughts exactly. I don’t want a fully-featured forum. I want something that simply runs within WordPress.
A couple of thoughts and a question:
1) Optimize forum reply titles for SEO; currently a reply displays the post number and (I think) the title of the parent post, which is functional for site architecture, but it would be nice if the reply author could provide a custom title (with the parent post number appended) and it would potentially provide better search relevancy.
2) Integrate akismet spam protection; not sure how this would work with posts instead of comments, but it sure would cut down on moderation time.
3) What was the specific problem using comment functionality for replies, if you don’t mind?
1) Internally, this is built in and ready to go. I’m just not using it myself right now.
2) I’m not sure how that’d work. I think a better approach would be protection during the registration process in WordPress rather than on the forum topics/posts themselves.
3) Ugly permalinks, can’t have attachments for comments, and lack of role capabilities for comments. I also had to write a ton of minor functions just to overwrite the commenting system because there’s so much room for variation within comments from different themes and plugins.
Arguably among the top 3 most important WordPress plugin developments of the decade!
I appreciate and respect the way you approach this problem with regards to the ‘official’ bbPress plugin initiative.
I don’t know if I’d put it in the top three.
If anything, I’m just using this as a learning experience. I’ve learned a ton of things about WordPress since taking on this project.
When someone inquired on the bbPress forums how the new plug-in would handle editing, this is what Matt said:
“Check out how P2 does front-end editor, it’s even slicker than bbPress. Actually check out a bunch of the features of P2 like the real-time post updating, etc.”
You can watch a video here:
http://p2theme.com/
Working Demo here:
http://p2demo.wordpress.com/
Would it be prudent to take a look at this theme to see how this is done?
Looks real slick…
Thanks for pointing this out. I agree. Implementing something like this would make for a beautiful forum plugin
Does using three post typesnumerous have numerous benefits ?
Works well with plugins that allow you to edit from the front end of the site. That’s fantastic!
There are quite a few benefits: role capabilities, attachments, and pretty permalinks. There’s a ton of minor things that just makes it easier. Plus, WordPress has a lot of useful functions that can be used/extended with post types. Mostly, WordPress does a lot of the work for you.
Have you seen Scott Clarks’ bbforum plugin? I haven’t tried it, but it looks similar and solid. It says it builds on the PODS CMS plugin, which creates custom content types.
http://www.scottkclark.com/forums/bbforums/this-looks-like-bbpress-but-its-built-in-pods/
The demo: http://www.scottkclark.com/forums/
In case it gives you any ideas. I just heard about it.
That said. I’m definitely looking forward to using your forum plugin b/c it’s comforting to know that I’ll be able to move to an official WP forum plugin–should it come along someday… Just what I’ve been waiting for!
Yes, I’ve seen it. It looks cool. Not anything against Scott or his projects, but PODS just isn’t my cup of tea.
I am very, very impressed, and cannot wait to see how this progresses. In honesty – it cannot come soon enough! I would be more than happy to donate to this project.
I hope it will release as soon as possible. I wanna try that. It would be useful. Great Job….
Love the idea and given me some inspiration to try and develop something for the site.
Will also be keeping an eye on the forum plugin as I think that could be really useful too. Some great work there Justin!
Good luck with this plugin Justin, the demo of this forum plugin in action at popcritics.com is looking sleek, and runs smooth!
Couldn’t agree more, I like BBPress also but it’s moving forward at a very slow rate, it even has stalled a few times.
Hopefully once the BBPress plugin is released more people will jump behind it and support it unlike the current BBPress forum software.
I hope so too. If nothing else is gained from my plugin, maybe it’ll help keep folks working to make a better bbPress so the competition doesn’t take over.
I hope it will release as soon as possible, I want to give a shot
Cannot wait to see the plugin in action!
I am looking forward to seeing this plugin in action! It looks much simpler than PhpBB, which in my opinion is a good thing!
looks really good Justin, can’t wait to get to try it on one of my sites. I’d taken to using Buddypress when i needed a forum, but it’s a bit overkill generally and doesn’t play well with themes out of the box.
keep up the good work and thanks in advance!
Wow! I can’t wait to see this plugin released! I’d love to try this on my Wordpress-powered sites. Like Dave, I’ve also tried using Buddypress, but also experienced the same issue that it does not go well with some Wordpress themes.
Thanks so much for working on this!
Great Tips. Many many thanks to you for share this
Feature request: Option to use ‘started by’ instead of ‘latest poster’ column.
BTW, any ETA for the plugin? A month, six months? I realize lots of testing still needs to be done.
Everything is theme-able, so you can dress it up any way you like.
I don’t want to set a deadline for release as getting the plugin ready for public release isn’t at the top of my priority list. I’m just working on it in my spare time right now and can’t let it get in the way of my main work.
Hi Justin,
Many thanks for your imminent contribution as a practical example of how to use custom post types and taxonomies. I have been following your various posts on the new features in Wordpress 3.0 with a lot of interest .
I have a question regarding your design: why did you choose to create the Reply as a custom post type rather than just use comments?
In my experiments with custom post types I took a slightly different approach of using comments for the replies. What additional features would I have if I were to migrate from my solution below to your new plugin?
On the Slickr Flickr site I have built a Q&A Support system with a ‘Support’ custom post type with taxonomies for support_type (question, issue or suggestion) and support_status (new, open, closed, deferred, fixed) and using the built in feature of Wordpress comments for the dialogue between my customer and myself as the problem moves towards solution. The clients submit questions as comments as on the main page or via a form – if they are repeat questions I just reply and link to the correct topic and if they are valid new topics then I manually create the new ‘support’ custom post with a little bit of cut and paste and then link to this in the reply. This seems to work okay for me. So far the only code required was to register the custom post types and taxonomies and set up pretty links. Although I probably do need to add a widget to improve the searchability of the support request and make the support status more visible.
Before I do any more work on this I wanted to understand if your solution would offer better capabilities to my customers and greater ease of use for me.
The biggest reasons were ugly permalinks with comment pagination, can’t have attachments for comments, and lack of role capabilities for comments. There were quite a few other minor things that helped make the decision too.
In general, I wouldn’t recommend the approach I used for most post types. Forums are just an entirely different beast.
What’d I’d do is give the client publishing capabilities for the “support” post type. That way, they can start the post more easily. I’d do everything else the same way you’re doing it.
If I were simply building support forums or a support ticket system, I’d take this approach too.
Very many thanks Justin for your insightful feedback.
My next step be to allow clients publishing capabilities for my “support” post type. This will indeed improve the support ticket initiation process.
As regards your forum then protracted discussions (long threads) could indeed make their pagination an issue so I do now understand your design rationale much better. Though I am not a big fan of attachments on Wordpress (due to inefficient rewrite rules, performance and general security issues) and much prefer to have all attachments as links to a CDN such as Amazon S3. This is easy to achieve when you are posting stuff yourself but becomes more challenging to make this easy for forum users
Hi Justin. I’ve been dying for a decent forum plugin for various sites for ages, and this looks like the perfect solution. Far too many are overcomplicated and frustrating for the end user, but this is just the ticket. I for one cannot wait for it to become available as a plugin!
I’ve been trying to work out how to do an episode guide with custom post types, been banging my head against a wall when it came to dealing with seasons but your three post types approach has just resolved that for me, thanks! Now to figure the rest out.
Working on getting a site up for Scouting in the Florida Keys (keysscouts.org). I’ve started working on an ‘Event’ custom post type (CPT) and it seems to be doing well. Now I am starting a ‘Unit’ CPT and the though hit me that I could perceiveably do a ‘Leaders’ CPT and build links between them like I would a database so I wouldn’t have to duplicate data input. I’m new to behind the scenes work in php and wordpress. How difficult would it be to do this and can you point me to some good references?
BTW- adding your feed to my reader. Great article and good references here! Thanks
One more WP forums plugin to check out if it helps spark ideas. http://cartpauj.com/projects/mingle-forum-plugin/
I think it might actually be built on custom content types b/c it creates a new area in the admin like custom content types do. It looks nice enough with nice features–email notifications on replies, etc. Still would prefer to use yours though b/c I trust that your code will be clean as can be and supported into the future should we ever need to transition into a core plugin some year in the future, which are both very important to me.
Would love to know what you think about it please.
Update: I asked the developer. His is not built on custom post types. It’s a fork of an old forum plugin.
Hi Justin,
Looks very well but 1 question: why didn’t you use simplepress forum?
Looking forward to a release, nice work it looks great
WordPress Today and Beyond, Custom Post Type is wonderful way to enhanced WordPress
Could a similar approach be used to reply blog post comments with a custom post type? It really irks me that replies are a bit of a second class citizen in Wordpress. (I’m sure that’s unfair and there’s a good reason, but the idea does intrigue me.)
Justin,
a thing isn’t still clear to me is haw I can name different level of cust. post type in different way.
I mean, the standard Post/Page have a child named Attachments, isn’t it?
Now if I create a new hierachical “Lesson” post-type, how can I call it’s childs “Lesson content”? (it’s just and example)
Stefano
WordPress rocks looking forward for A WordPress forum plugin… thanks for sharing
If the bbPress plugin actually makes the deadline for its first public alpha release, due mid-September, don’t you think this project will be rendered somewhat redundant?
Absolutely no offense intended; I was just of the understanding that part of your motivation for writing this plugin was because the official bbPress plugin seemed to be months away still. Seems not.
So now, instead of providing a plugin-alternative to bbPress standalone while users are waiting for the official plugin, there’ll be two near identical forum plugins being developed almost in parallel, yet by different people. Maybe a collaboration would be worth reconsidering?
I’ve always been up for collaboration on bbPress. I was even a part of the team a long while back that wanted to get something done, which ended up turning into nothing. As mentioned in the post though, I haven’t had the luxury of waiting to see where it goes. I had a couple of projects that needed forums.
If they can make a mid-September launch, great. I’ll probably even use it myself and contribute to it at some point. But, I’m still questioning that date because I haven’t seen any new code going in for about a month (unless I’ve missed something).
This project isn’t about competing with bbPress. I needed a solution. I coded a solution. I’d like to contribute it back to the community.
In all honesty, I could’ve released an alpha version a month ago, but I too am interested in where bbPress goes.
Hi Justin – did you get any closer to releasing your forum plugin?
Just registered at Pop Critics, great ! I am looking forward to this plugin, thanks for the hard work.
There’s no harm by running parallel projects. Due to the nature of open source, each project could benefit from the other. There’s already another forum plugin which is very interesting with a completely different approach:
http://simple-press.com/
I’ve used it for a site and it was great. That said, I’m really looking forward to Justin’s because due to the fact that the forum entries are actually posts opens a whole world of possibilities, since you can use almost any plugin available in WordPress repository to enhance the post.
Justin,
Thanks for you work. I am hoping that this will be a solution to a stumbling block I have had to using WP.
Any time frame yet? One post on pop critic anticipated sometime in Sept. for beta. Does that still seem likely? Where/what is the best way to watch for it’s release?
Great work Justin!
I’m really excited to see this. One of the worst parts about putting together a website with WordPress is the need for a forum. As a user I’ve been a fan of vBulletin but nothing integrates well with WordPress, especially vBulletin. If you can nail this one you’ll be doing the community as tremendous service.
What’s more, having worked with database design for over 20 years I think you nailed it with your post type architecture. Plus the simplicity and cleanliness you produce with your designs should serve this project really well. My only fear is that you may not take it to the next level!
Speaking of which, as for bbPress and BuddyPress and especially the former, my gut tells me that because of the nature of focus they/it will always lack for the focused attention within Automattic that WordPress gets; e.g. they/it will always be a bridesmaid and never a bride. Plus I fear there’s probably too much legacy technical baggage in bbPress and your clean-room post type-based architecture is exactly what we need.
Kudos! When we can see it? Maybe you’ll use it as a full fledged example for your book?
-Mike
Justin, frankly, even if the bbPress effortreally takes off – I’d still like to see your approach “in code” – especially its possible integration with your Members plugin. For me the value is in that I can actually understand what you’re doing when I read your code.
Wading through the new and depreciated Codex is simply too time-consuming for me to grasp enough to code a complete “solution” – but once I get a look at your approach – I can often see the light. I look forward to each new Wordpress release – but I turn here and the Hybrid blog to actually learn how to use them!
http://www.themehybrid.com
I recognize, however, that you have more than a few things on your plate. Still, between this and Hybrid Core – I’m in a holding pattern myself.
I’m definitely looking forward to your book – No doubt. and good luck with that…
So, John Jacoby posted this at the weekend on buddypress.org:
“Sorry for delay in response. bbPress plugin is going to be a bit delayed as a few other projects needed attention sooner. Aiming for October 15 now.”
Any chance of your plugin beating him out of the blocks and getting a big lead in uptake?
Dear Justin Tadlock,
Please allow me to share my thoughts. I have been wanting a light weight forum plugin for my Wordpress/buddypress site. I know Buddypress already has a forum component, but I want to keep that for my users. I want a separate discussion forum plugin (as easy as vanilla forums).
I don’t want a separate forum profile page but I want the forum user profile link to the buddypress profile page plus show user recent posting list in the buddypress profile page.
I just want a forum with categories, tags and posting form.
Thanks for listening!
Hello! I am abig fan of simple code, design and work. Ihave been looking into your forum project and i just say it looks great. I love the say you cuntributed to the community in the past, and every day that goes and the future.
I would love to see your code, or test it or vet an update how ita going.
Greets
Im looking forward to try the pluging. I have a site that give tips for cleaning and would love to add a forum. Hope that you release it soon:)
Hi Justin!
Any updates on this?
We’re building a platform based in WP3, and right now we are analyzing forum plugins and solutions. In my opinion your’s is the best approach for simple forum implementation as it will keep everything 100% WP.
This brings up the question: Can I se the code? I’d really like to test it on my setup… Can I use it or fork it?
Please keep us posted.
Cheers!
I can’t wait to download and use the forum plugin
Can’t wait to see this plugin either. Great way to use Custom Post Types. I have not used them a lot myself as of yet, but I totally agree for a forum that is part of the same WordPress installation this is THE way to add a forum to a WordPress site. It is a great way to integrate forum capability into WordPress.
Hi Justin,
Hmm…
Just wondering, like Kaj Rietberg, why nobody seems to know/care about simplepress?
@Anthony : what makes the difference with Simple Press, are the custom post types compatibility. Simple Press just work on his own, and you can’t add any Wordpress plugin to it, because of that. It’s called “simple”, but has more than 1000 files.
Justin’s “custom post type” approach is the new way to add custom data to WP. You may add plugins, new taxonomies to his forum plugin.
People here also like the simplicity of his plugin. It doesn’t offer fancy and useless stuff like : signatures, icons, stats, upload,…
Absolutly agree with Nico. I used to work with simple press. I have to say, Its wonderful plugin but very slow because of java extensions. It was hard time for bandwitch and developers just said: “Its fine, our forum is working properly.”
Thanks but no more, unless they put some light-weight solutions or options.
Hey Justin, any updates on this? Thank you for the work you’re putting in.
Hi
Merry Christmas !
Is this going to be released by 2011?
Cheers
Johnny
Hi Justin!
To a question about integrating with Akismet you answer:
I just wanted to point out that for anonymous users there is no registration process, and that some sites may wish to allow for anon-topics/replies
I think that in general plug-ins shouldn’t take that kind of choices on behalf of their users “There will be no anon submissions in your forum” – However a default setting, that can be changed is quite OK.
Hi Justin,
Do you have any news about releasing this to public ? Or even better to github ?
Best regards
Patrik
Please count me on the list of people waiting for this plugin.
Cheers,
Richard
Count me among the interested as well.
Quick question Justin: would this be a separate WP install that takes advantage of your post on sharing user information…
http://justintadlock.com/archives/2008/09/20/installing-two-wordpress-blogs-with-the-same-users
…or is the goal to create custom post logic functionality on an existing WP site?
Thanks in advance for your time.
Will also be wanting this plug in!
Justin,
Add me to the notify when done list.
John
awesome thing.. can’t wait to be out…
Hi Justin.
I would love it if you could make THAT forum so that we could discuss about IT.
From my point of view, taking away Category out of equation seem to be a little to far away from the ground. Dont you think that Wordpress will allow custom field for category in the future?
Please forgive my straightforwardness. What I suggest here is the very basic structure:
- Taxomony as Forums
- Custom post as Topic
- The very own wordpress comments as Replies
So basically we don’t need to do too much to make this forum work.
What I hope now: please make it before I do
Cheers,
Binh
That structure would work. It was actually the first I used. However, it is extremely limiting for full-fledged forums because comments can’t have image attachments, terms can’t currently have metadata, and a few other reasons that are too complex to go into right now.
This is one of the better ideas I’ve seen for a WordPress Forum. Is the plugin in active development and will it be released to the public? Or was it just a proof of concept?
I think that in general plug-ins shouldn’t take that kind of choices on behalf of their users “There will be no anon submissions in your forum” – However a default setting, that can be changed is quite OK.
I’m reminded of this as I dig into the Users chapter of the WordPress Plugin Development book. Definitely one of the best investments I’ve made in quite a while as a developer.
I’m just wondering what the status of this project is? It looks like the demo forums are no longer available (guess you got all the testing you needed). And I noticed it looks like good progress is being made on the bbPress plugin: http://bbpress.org/forums/topic/bbpress-plugin-updates
So where you at on this, and do you need further help to move it forward?
This looks great. I’ve been looking for a very simple forum plugin for a while. Any news on a release of this plugin?
Hey Justin,
Reading you’re feed here it looks like you could be on to an absolute winner if it works well! I’ve spent a lot of hours trying other forum systems out that I’m not really enjoying using.
Like you say, a forum plugin that integrates well with the wordpress ‘users’ is vital, and I don’t think the likes of wp-symposium will do this without major changes to the coding.
How’s the progress – I see the test site’s down at the minute. Would love to see it in action buddy.
Cheers!
Hi
Justin Tadlock
Creating a forum using custom post type possibilities is a great idea this idea is in my mind since when custom post type feature is added to WordPress.
This is a more reliable way instead using plugin or integration other forum software with WordPress.
I like it
Thanks to support my idea
Hi Justin – do you have a release date for this forum plugin? I’m desperate for something aesthetically pleasing and functional with WP. Thanks!
Hey Justin, any updates on this? Thank you for the work you’re putting in.
any new about it, any date of release? Would be sooo nice
)
Hi Justin, any news on the plugin? I’m right now looking for an alternative to Simple:Press, bbpress and Mingle. Thank you!