bbPress 2.0 – Theme Compatibility
-
A few questions have cropped up already, so lets funnel the discussion here.
bbPress 2.0 introduces a radical new approach at integrating robust new functionality into existing WordPress themes. If you’re an average user looking for a turn-key forum solution, this works out pretty awesomely – If you’re a talented developer trying to beat your own drum, it’s all probably a little bit confusing.
Theme Compatibility
bbPress comes with a child theme of TwentyTen, titled (you guessed it) bbPress – TwentyTen. This theme includes all of the custom bits that bbPress needs to function, broken up into template parts to allow them to be used in several places, like template files, shortcodes, and widgets.
- MOST COMMON – If you’re using any other conventional WordPress theme (TwentyEleven, BP-Default) and find the default template layout of bbPress acceptable, you don’t need to do anything at all – it should just work.
- DO NOT put any custom themes in “/bbpress/bbp-themes/” as they will get wiped out when you update bbPress.
- CUSTOM – If you want to build your own theme or make changes to the existing template files, you’ll need to do the following:
Copy Files
- If this is not a custom theme under your control (meaning you are not the author) you’ll want to copy the contents of the “/bbpress/bbp-themes/bbp-twentyten” folder into your “wp-content/themes/%YOURTHEMENAME%” folder, where %YOURTHEMENAME% is the name of your custom Child Theme of whatever your current theme is. This is so theme updates don’t wipe out all your hard work later.
- If you are the author of this theme, then you can copy all the files *out of* the “/bbpress/bbp-themes/bbp-twentyten” folder into the folder of your theme, and make your own edits from there. The files to copy include the single-*, archive-*, page-*, and anything in the subfolders.
- In neither case should a new folder with the name “bbp-twentyten” exist. You are not copying the FOLDER, you are copying what’s IN the folder.
Add Theme Support
Now that you’ve got the files copied over, you’ll need to tell bbPress that you are in control of the theme situation. You do this by adding this to your functions.php file:
add_theme_support( 'bbpress' );
By doing this, you’re telling bbPress that your theme has its own template files to handle all of the new functionality that bbPress adds. This method gives you a single on/off switch to either use the standard theme compatibility, or use your own.
In the future, specialized template compatibility themes can be created either as plugins or child-themes to work like “add on packages” to existing themes, without requiring elaborate edits to existing themes, moving files around, etc…
Shortcodes (as of May 23, 2011)
Whether you rely on theme compatibility, or decide to go the custom route, we’ve included a few standard shortcodes to let you output specific forum content on any post or page in your forums. This is accomplished within an output buffer, so they won’t interfere with any of your existing page or post content. Note that if your theme specifically removes the shortcode functionality, these will not work, and will instead the actual text of the shortcode will appear on your site.
- [bbp-forum-index] – Show the root forums
- [bbp-single-forum id="A forum ID"] – Show a specific forum
- [bbp-topic-index] – Show all topics
- [bbp-single-topic id="A topic ID"] – Show a specific topic
- [bbp-topic-tags] – Show all topic tags
- [bbp-topic-tag] – Show topics of a specific tag
- [bbp-topic-form] – Show the new topic form
- [bbp-reply-form] – Show the new reply form (not commonly used)
- [bbp-single-view id="A view slug"] – Show the topics of a registered view
In the future, we’ll be adding more shortcodes as the needs arise.
That’s it for the first round of explanations. I’ll edit this post as more questions and answers come through.
-
click on the forums link under the settings tab. On that screen, where you set the number of topics to display etc.. click save. That sets the permalinks for bbPress.
Also make sure that your actual permalinks settings page uses something other than the default top option. Chose any other option and click save.
That should get you going.
Thanks moderator
I have to agree with @WhiteRau, a thorough read through the sticky post (and then his to reiterate in my mind), I was able to combine the bbpress template files with my child theme.
My question is that I’m trying to modify the output and html layout of my bbpress template files, and I can’t seem to figure out a solution.
1. My forum is on the page: Forum, and my forum base slug is: forums. Different, you see? That’s because I want to show the Latest Topics, not default to showing all my forums, when you click the menu for Forum (very much like the bbpress.org/forums).
2. I’m using a page template for the Forum page that outputs the Latest Topics, except as soon as you click away from this page, it reverts back to the default layout.
Problem: I need all the forum pages to use the same layout, preferably a custom one, and the ‘front’ Forum page to output the Latest Topics.
Any ideas?
That did the trick. Thanks for the help
I was testing the bbPress because I was dissatisfied with BuddyPress … I give up of bbPress too.. you must have confidence in a forum script to put into production .. I do not trust in bbPress… do not recommend..
^ Not very helpful criticism.
What didn’t you like? What was your experience? It’s very possible the problems you experienced weren’t even with bbPress.
Hi there,
I’ve got a problem with custom page templates and wordpress pages with bbcode shortcodes.
I’ve created a page “Forum “with shortcode [bbp-forum-index] and made it main Forum Page. Since most of my pages use sidebar, the one with forum index was meant to be fullwidth. I tried to set a custom page template but with no effect. The Twenty One template uses only default theme template and keep displaying sidebar.
I do know how to create custom page templates for wordpress but they just don’t work with bbpress plugin Anyway, I don;t know how to make bbpress work with my custom templates.
Any ideas?
Some constructive criticism, if I may.
I’ve read about a tremendous interest in using bbpress as a viable forum option. I want to start by saying I’ve been involved in open source for over 15 years myself and the work and dedication here is very admirable (remembering ROI.) People such as myself would be willing to put in some time and effort to make this project work but there are some fundamental things lacking here that give me cause for concern in using bbpress. Virtually all forums I see using are either (a) the most basic customer support, nothing long term discussion/community based, or (b) amateurish sites set up that are chop shop and will be down in a few months. It doesn’t have to be that way. Couple of things:
1. If it’s not relatively easy, simple or clear to theme bbpress, few will ever use it. Fewer will design themes for it too. And if there isn’t at least a decent, comprehensible system, nobody will use a plugin if it just typically looks like another ratcheted in plugin. Hopefully, this is not the case.
2. Organization here is a mess. I go to plugins and I see listings from 5 years ago and the top. It’s not easy to figure out what is what here. Documentation is incomplete and I remember having a terrible time installing it too – and I’m not a novice. This is the easy part that scares away many potential users.
3. Sometimes simple is too simple. Some things should be standard. For example, nobody wants to have to scroll down to the bottom of the page just to post a reply. That’s just one issue that leaped out at me. Sometimes less is just less.
4. No clear vision here, e.g. the latest blog entry is November 28 2011 and this place feels half deserted. It doesn’t have to be that way.
5. There needs to be an easier way to navigate the forums on this site. I could care less about a long list of tags I’ll rarely use. I do want that short list of forums in the sidebar or somewhere so I don’t have to click my way back to the home page.
Just a few pointers. I like this project, would love to consider using it for a large site but the ghost town effect is putting me off a little.
Finally got a bbPress child theme working. Just wanted to make a slight clarification, in case someone ran into the same stumbling block.
Make sure when you copy files from /bbpress/bbp-themes/bbp-twentyten that you maintain the subfolder structure as well (e.g. css, js, bbpress). I was copying all files into the root of my custom wordpress theme (wp-content/themes/mytheme) without maintaining the directory structure and I was getting some strange behavior.
Hope this helps someone who might be having trouble!
Hi everyone,
I read the beginning of the topic cause I am very interested in building compatibility between my theme (a child theme of buddypress) and bbpress (indeed I installed the buddypress plugin and the bbpress one).
I don’t know if this has already be given as a solution (or even if it actually one . I copied the bbp-twentyten theme and personnalized it. Then I redefined it as the default bbpress theme, in order it is the one used instead of bbp-twentyten.
What I wrote in the functions.php of my theme:
if ( class_exists('bbPress') && file_exists(%FUNCTIONS_PHP_OF_MY_BBPRESS_THEME%) ) {
require_once %FUNCTIONS_PHP_OF_MY_BBPRESS_THEME%;
} else {
add_action('admin_notices', 'message_if_my_bbpress_theme_is_absent');
}In the functions file of my bbpress theme I have:
$bbp->theme_compat->theme = new MY_BBP_THEME();
And thus I have my child theme from buddypress safe and my second theme for bbpress used instead of bbp-twentyten.
Hope this is a good solution and it can be helpful!
Hey, villagora!
Can you tell more how you did this?
I copied the bbp-twentyten theme and personnalized it.
Did you move the copy to bbp-themes or to the wp-content/themes?
Then I redefined it as the default bbpress theme
Do you mean changes in both functions.php or making changes in core?
%FUNCTIONS_PHP_OF_MY_BBPRESS_THEME%
What is that? Should I change it to path to functions.php and should this path to be absolute?
Thanks!
Ok.. so, I’m trying to make the Magazine Basic theme support bbPress. It WAS working just fine.
I don’t know what I did, but next time I went to my forums page, it looked Like This.
Can someone help me with this problem?
ok, i made the child theme. and i want to copy bbpress files but there is also one style.css file. should i copy that to the child theme?
also function.php exists both at child theme and bbpress files. what sould i do?
(i created child theme with all the main theme files exists)
In bbPress 2.1, functions.php is replaced with bbpress-functions.php in your theme, to avoid the conflict.
before your answer i just added all bbpress theme files except style.css and function.php anda also added necessary line.
it seems allright but to make it right what steps should i take?
delete current version and start to use 2.1,
re-add the files on child theme then?
since i cant edit my question, is there any documentation for merging function.php and style.css?
i try things to merge but every time wordpress stops working.
Hi John,
I work on deep customisation of bbpress (http://demo.villagora.fr/forums/forum/forum-thematique/) and I’m trying to update bbpress 2.0.3 to 2.1 !
So I’ve copied the contents of the “bbpress-theme-compat” in my bbp-theme (it’s a child of my current theme) for to modify bbpress templates / css / images…
But after the update, my child theme does not overwrite the default bbp-theme-compat files, and I don’t understand why ?
Can you explain me how use “add theme support” for overwrite properly bbpress template file in my child them, with bbpress 2.1?Thanks in advanced.
Sorry for bumping an old thread but I’ve been messing with this for hours and ripping my hair out. I just installed WordPress and I’m using the Arras theme. I also just installed bbPress and I’m trying to follow this tutorial (I don’t have forum “page templates” available) but I don’t seem to have this “/bbpress/bbp-themes/bbp-twentyten” folder anywhere? What could I be doing wrong?
- The topic ‘bbPress 2.0 – Theme Compatibility’ is closed to new replies.