Bulletin boards and forums are good old reliable tools to build online communities. There are plenty of open source forum softwares that you can install on your website. However, if you are running a WordPress site then integrating a third party forum with WordPress can be a mess. bbPress is the answer to that problem. In this article, we will show you how to add a forum in WordPress with bbPress.

What is bbPress?

bbPress is a forum software built the WordPress way. It uses your existing WordPress core which makes it really easy to add a forum in WordPress with bbPress. It is extensible, so you can add additional add-on plugins to extend the functionality. bbPress is light-weight and faster than other popular open source forum softwares.

How to install bbPress

bbPress is available as a WordPress plugin. You can install it like you would install any other WordPress plugin. Simply log in to your WordPress admin area and go to Plugins » Add New . Search for bbPress and then select bbPress from results. Install and activate the plugin. Upon activation you will see the welcome screen for bbPress.

bbPress welcome page

Creating a Forum with bbPress in WordPress

Once installed, bbPress adds Forums, Topics and Replies menu items in your WordPress admin.

bbPress admin menu items

Click on Forum » New Forum. This will take you to a screen similar to WordPress post edit area. Provide a title for your forum and enter a little description of it. Then press the publish button.

Creating a new forum in bbpress

Displaying bbPress Forum in the Front End of WordPress

Now that you have created a few forums, it is time to display those forums on the front end of your WordPress website. Create a new WordPress page. Give this page a title, like Forum, Community, Support Forums, etc. Paste the following shortcode in your page:

[bbp-forum-index]

Turn off comments and trackbacks on this page and then publish it.

Go to Appearance » Menus and add this page to your navigation menu.

Now when a user clicks on this page, it will show your main forum index.

Forum Index page in bbpress displayed in Twenty Twelve WordPress theme

Integrating bbPress with your WordPress Theme

In most cases, you would probably want to open your forum for new registrations. To do that you need to open your website for registrations.

Go to Settings » General, check the box next to “Any one can register” to allow registrations on your website.

Opening your bbpress forum for registrations

Now that your website is open for registration, the first thing that your forum participants would look for is a registration page. To create this simply create a WordPress page, and give it a title, e.g. Register. Add shortcode [bbp-register] and publish the page.

Another page your users would need is the lost password recovery page. Create another WordPress page, give it a title e.g. Lost Password. Add this shortcode to the page [bbp-lost-pass] and publish the page.

bbPress comes with a handful of widgets. Go to Appearance » Widgets to check those widgets. The most important widget that you would need is the (bbPress) Login Widget. Drag and drop Login Widget to your sidebar or any other widget area. Enter the URI(s) for the registration and lost password pages and save the widget.

bbPress log in widget settings

Now a login form with links to registration and lost password recovery pages will appear in your sidebar. Logged in users would see their usernames and a log out link instead of the form.

bbPress login form in sidebar

Managing bbPress Forum Settings

Unlike other popular forum software, bbPress has a very simplified configuration page. To manage settings for your bbPress forums, go to Settings » Forums. This is the bbPress settings page from where you can control several aspects of your forum.

bbPress forums settings page

The first option you would see on Forums Settings page is “Disallow editing after”. Default option for this setting is 5 minutes. This setting allows Forum participants to edit their posts after publishing. After this time they will no longer be able to edit their posts. However, a forum Keymaster or Moderator can over ride this setting.

The second option “Throttle posting every” 10 seconds is basically a forum flood protection measure. It allows you to control after how much time a new post should appear on the forum.

On the settings page you can configure forum and topic slug as well as the number of topics and posts to appear per page. You can also allow users to subscribe to topics or add topics as favorites.

User Roles in bbPress

bbPress comes with five pre-defined roles, each with different capabilities.

1. Keymaster – The website owner or the WordPress administrator is automatically assigned the Keymaster role when they install bbPress. A Keymaster can delete and create forums, can create, edit, delete all posts, topics, forums.

2. Moderators – Users with moderator user role have access to moderation tools, which they can use to moderate forums, topics, and posts.

bbpress moderator tools

3. Participants – This is the default user role, participants can create and edit their own topics and posts, they can favorite and subscribe to topics.

4. Spectators – Spectators have a read only access to public forums, topics and posts.

5. Blocked – When a user is blocked all their capabilities are blocked. They can still read publicly viewable topics and posts, but can not participate in the forums.

That is just how easy it is to create a forum in WordPress with bbPress. Ofcourse you can add other functionality by using over 100+ different bbPress plugins.