Discussion forums have been around for almost as long as the internet itself. Even before the World Wide Web became popular, people were sharing information and discussing topics using terminal server bulletin board systems. In fact, my very first experiences with the Internet back in 1998 revolved around the chat rooms and discussion forums on AOL (boy do I look back nostalgically at those halcyon days).
The modern discussion forum retains the core idea of what is now a very well-established concept — sharing information and discussing topics — but has evolved into a lightweight plugin for WordPress that can be installed in a matter of minutes.
I am talking about bbPress – the WordPress forum software built by the very guys who created WordPress itself. In this post I am going to explain exactly what bbPress is, why you may need it, and also show you how to install it.
Why You Need bbPress
- It’s lightweight. Forum software is traditionally bloated, full of security holes, and a real drain on your server. The latest version of bbPress (v2.5.13) is simple to use and open source – so you can tweak the plugin as necessary.
- It’s fully integrated with WordPress. This benefit goes beyond the ease of installation. bbPress takes advantage of the WordPress user management system, and has access to the vast WordPress plugin repository, where you’ll find a decent number of specific bbPress compatible plugins. One of these is BuddyPress, a template for a WordPress-based social network that actually uses bbPress to power its forums.
- Customization is easy. bbPress has a unique advantage over other forum software when it comes to customizing the styling for your forum. Since it’s built for WordPress there are many amazing themes (like the Total WordPress Theme) designed specifically for bbPress so changing the look for your forum is as easy as changing your theme.
If you want to start a traditional bulletin board or new social network then bbPress probably isn’t for you (although do check out BuddyPress as a basis for the latter!)
However, if you want to add a community element to an existing blog or a support area for your clients, you’ll be hard-pressed to find something better suited than bbPress.
What Is bbPress?
Any site owner should understand what’s going on within their plugins. bbPress is simply three custom post types, some layout templates, a system of shortcodes, a couple of widgets, and CSS code. That’s why it’s called lightweight!
Custom post types
The three custom post types are:
- Forums: which holds each discussion forum you create, allowing a hierarchy of forums to be created
- Topics: which holds each discussion thread (the title and opening post)
- Replies: which holds each individual reply to a topic
The standard layout templates are suitable for most instances. For example, the topics layout will display a list of topics with the following information:
- Topic name
- Who started the topic and in which forum they started it
- The number of people engaged in conversation (voices)
- The number of replies to the topic
- (And possibly) How long ago the last reply was and who made it
The various elements can be styled with CSS to better fit your blog, but if you want to make substantial changes to the structure, you’ll need to be comfortable with PHP or purchase a theme like Total that offers custom styling options built-in.
Shortcodes and Widgets
bbPress makes it simple to display the various elements of the forum wherever you want to through a series of shortcodes and widgets. This is actually an incredibly powerful feature, allowing you to consider usability and responsive design.
For example, you can create a page listing the latest topics with a selection of the most popular posts highlighted in your sidebar by using just one short code and one widget. If you decide you prefer a more traditional forum layout listing the categories, you can switch things around in minutes.
To give you a feel for the flexibility, check out the codex to view all 19 bbPress shortcodes.
The included widgets are:
- Forums list
- Recent replies
- Recent topics
- Topic views list
- Login widget
The login widget is especially useful, displaying a login form to visitors, and a profile link to logged-in users.
If you decide to give bbPress a go, installation couldn’t be simpler.
Install bbPress via the WordPress Directory
Just search for bbPress in the WordPress plugin directory, hit install, and you’re done (or, if you want to use the plugin as a basis for development, or just to take a closer look, you can download a copy from the WordPress plugin repository).
Install bbPress via a WordPress Theme
Your other option is to install the plugin via your WordPress theme (if it offers the option). For example, the Total WordPress theme is not only fully compatible with bbPress but it includes a ready to go, easy import bbPress demo.
Simply head over to Themeforest and buy Total (one of the highest rated and popular drag & drop WordPress themes on the web), install & activate it, then navigate to Theme Panel > Demo Importer (note: this is unique to Total, most themes will not include this awesome and easy to use feature).
From here search for “bbpress” then click on the demo to begin.
Once you click Total will prompt you to install any required plugins, which in this case includes bbPress. Simply click on each plugin to install and activate.
With that done Total offers you the option to specify which parts of the demo you’d like to import. For the Total bbPress demo be sure all boxes for XML sample data, images, theme customizer settings and widgets are set to have your website looking identical to the live demo.
When the import is complete you should see a message like the one above. This means your sample content and bbPress are ready to go!
Basic bbPress Setup
Once bbPress is installed and active, you’ll notice the three new custom post types in the admin menu, and a bbPress page in the Settings menu.
Before you dive in and create the forum of your dreams, spend some time in the settings menu. Navigate to Settings > Forums.
In particular, you’ll want to tweak the spam settings, including:
- Throttle Time: the minimum number of seconds allowed between new replies from the same user
- Allow Anonymous Posting: Disable this to require a user to register for an account to post a topic or a reply
Once you’ve done this, it’s good to create a number of sample forums, topics, and replies (preferably from several different user accounts) before you start to tweak the design. With dummy data you’ll be more likely to spot things that need fixing with CSS, particularly on mobile devices. Lucky for you, if you’ve chosen to use the Total theme sample demo you’re all set to move on to customizations!
To customize bbPress you really need to be a developer… or use one of the following cheater methods to customize your forum styling without knowing how to code.
Option 1: Use Your Theme Settings
First off, if you did decide to use a theme that offers added bbPress options you should look there first. Navigate to Appearance > Customize to edit options.
Specifically under the bbPress section (like the one in Total) to select the default page layout for forums, topics and user pages. After that utilize settings under Typography for custom fonts and under General Theme Options for accent colors, Page Header Title selections, Forms styling, Links & Buttons customizations and more to make the design match your branding.
Option 2: Use a Live CSS Editor Plugin
If by chance your theme doesn’t offer any styling options, or simply not the ones you’re looking for you might want to consider a live CSS editor plugin. These plugins allow you to point, click and edit elements of your website using easy styling options (no code required). Here are our two favorites:
- Yellow Pencil: This plugin is one of our favorites. Simply install and click “Let’s Start” to begin customizing your website! Want to learn more? Checkout our full Yellow Pencil user guide to see how the plugin works and what features are included.
- CSShero: Similar to the previous plugin, CSShero offers a super easy to use point & click interface to edit styles, colors, fonts, spacing and more. Take a look at how this plugin works in our CSShero guide for customizing WordPress.
Recommended bbPress Add-on Plugins
As mentioned earlier, bbPress is easy to extend through a large number of plugins. Here are a handful we think you might like to consider to add more features and options to your forums.
Ultimate Member bbPress Addition
Add options for easy user signup, advanced profiles and even memberships with the Ultimate Member plugin. This extensible option fully integrates with bbPress so you can offer your forum members more to enjoy.
bbp Style Pack
Want to add a few basic styling options for your bbPress forum? Give bbp Style Pack a try. This free plugin adds options to customize styling, links, display features and more.
bbPress Notify (No Spam)
This plugin sends an email notification to users when new topics and/or replies are posted. It’s useful if you’re operating a support forum and need a particular person to respond to questions in a particular forum, for example.
GD bbPress Tools
One of the more comprehensive bbPress plugins available, this adds BBCode support, user signatures, additional custom views, in-reply quotes, plus some additional admin features.
The Best Forum Solution?
It’s lightweight, quick, and easy to install, but is bbPress the best forum solution for your WordPress blog? There’s only one way to find out — grab a copy, install it on your site and start experimenting!
Now it’s time to get your feedback. Are you a bbPress user? Do you consider bbPress to be the best forum solution for WordPress users, or do you prefer an alternative solution? What’s your experience of adding a community element to your blog?
Please give us your answers to the above questions in the comments sections below. Alternatively, if you have any other comments or questions, please fire away!