bbPress is the most famous plugin used by the WordPress community to insert a forum section on your website.
Forums are very reliable tools that have been used online since the beginning of the internet. They serve to build a strong community where your users participate and create content for your domain. Here you will learn the differences between a category, a forum, a discussion and a reply. I will also teach you how to create them and familiarize you with how a forum works and with the bbPress plugin in particular.
To use this plugin you need to have a hosting, a domain and install WordPress and a theme.
If you still don’t know how WordPress works I leave you this tutorial where you will learn how to handle yourself fluently with it in an hour.
The bbPress plugin settings options we will find them in Settings → Forums.
They are very easy to understand options. We can find:
- Anonymous posting.
- Editing time.
- Number of discussions and replies per page.
- Subscriptions to forums and discussions.
- Change URLs of forums and users.
- Bookmark discussions.
- Auto embedding of videos from Youtiube, Vimeo, etc.
- Assign moderators and supermoderators.
As you will see in the following screenshot it is not complicated at all.
With bbPress forums can be open to the public or simply for users registered by the administrator. If you want users to register themselves you must allow registration from the general settings of WordPress.
Once you have checked the box to allow registrations the next thing to do is to create a page with a form for users to enter their username and email.
If we now go to view the registration form from an incognito browser tab, we will see something like this: (The layout may change depending on the theme you are using).
We only have to fill in a username and a valid email address as we will receive the account confirmation link and our password in that email.
User access to your website is very simple. You can do the same process as with the registration form, i.e. create a new page and add the shortcode [bbp-login].
You can also use a widget and put it in the sidebar of your site so that users always have the login form in view. You can add it from Appearance →Widgets.
Besides the login widget you have a few more:
- Discussion views list.
- Forum search form.
- List of forums.
- Recent discussions.
- Recent replies.
As I am logged in, the screenshot shows my username, my profile picture and a link in case I want to log out and disconnect from the forum.
If we go to see the login form in an incognito tab of our browser, we will see something like this.
User Profile Roles
Just like WordPress creates a series of roles such as administrator, subscriber, editor, author, etc. BBpress also creates its own. Each role has its function and different capabilities to do things in your forum.
- Super administrator: the website owner (administrator) is automatically assigned the role of super administrator when you install bbPress. A super admin can delete and create forums, create, edit, delete all posts, topics, forums. He is the boss and no one is above him.
- Moderator: users with moderator role have access to specific moderation tools so they can delete replies or topics that should not be on your forum.
- Participant: this is the default user role, participants can create and edit their own topics and replies, they can bookmark and subscribe to topics.
- Viewer: viewers have read-only access to public forums, topics and posts.
- Locked: when a user is locked, all his capabilities are blocked. They can still read publicly visible topics and posts, but cannot participate in forums. Pretty much the same as a viewer.
Categories form a group of forums.
Go to forum → new forum.
- Type the name of the category.
- Add a description.
- At the top right we will see Forum attributes → Type:
- We select category.
- Click on publish.
We can also choose an exclusive moderator user for that forum category.
The forums form a discussion group.
Go to forums → new forum.
- Type the name of the forum.
- Add a text.
- In forum attributes we choose type → forum.
- In top we can link the forum with some forum category.
- Click on publish.
Discussions form a group of answers.
Go to discussion → new discussion.
- Enter a title and content.
- We choose in which forum we want to create the discussion.
- We can also choose the type of discussion: normal, fixed, super featured.
- We select the status: open, closed, pending, spam, trash.
- Click on publish.
Replies are exactly the same. Another custom post type (CPT) where you can view, edit, delete, etc the answers of all the discussions of all the forums.
So let’s move to the front end and see how the user views all this.
Once we have already created a few categories, forums and discussions, we can go to Appearance → Menu and place those links in our main menu so that users have quick access to the forums.
From the front end the user will see it like this:
If we click on any category or forum where we have any open discussions, we will see a listing of all the discussions. If we click on any of them we will access to the content and from there we will be able to:
- Reply to the discussion.
- Mark an email notification if someone replies to your answer.
- Subscribe to the debate.
- Add it to favorites.
- We will be able to go to the profile of the author of the debate.
Visitors will not be able to reply, instead of the comment form they will see a login form to access their account.
Each user has a profile visible from the front end where other users can see their information. You will be able to see:
- Registration date.
- Web page.
- Discussions started.
- Created answers.
- Last activity.
bbPress has a lot of addons both free and paid that add extra functionality to the main plugin.
Doing a quick search in the WordPress repository you’ll find a few free addons that may come in handy in a pinch.
There is also bbp.design where you will find a lot of free and paid addons to complement your forum made with the bbpress plugin. For example you have plugins for:
- Advanced registration and login.
- Integration with Woocommerce to charge for registration.
- Make forums only visible to registered and logged in users.
- Automatically approve user registration.
- Customize the appearance of the forums.
- Add a ‘Like’ button.
- Blacklist domains and bad sounding words.
- Temporarily hide discussions and replies.
- Users can add their social networks to their profile and display them on the front end.
As you have seen bbPress + free and premium addons is a great option if you want to add a forum to your website. It is a plugin that we can say that it is part of WordPress so there will always be updates, support and a community behind it of people willing to help you.
In fact bbPress has its own support forum on WordPress.org.
There is another option that I quite like as well, WP Forum. I have used it in some jobs and I have to say that it works very well too. In fact, I’ve made a note in my tutorial notebook to do a full review very soon.