Plugin Sale! Save 15% on pro plugins with discount code: FALL2020
Web Dev + WordPress + Security

bbPress Theme Template Files

For those getting into bbPress for hosting your own forum, customizing your bbPress theme files can be difficult if you don’t know which page to load. Many of the bbPress theme template files contain enough clues to figure things out, but not every template file is used by default, or even at all depending on how you’ve configured bbPress. Themes may contain different template files, but the default “bbPress (Twenty Ten)” theme (included with version 2.1.1) may be considered a complete set.

In this post, I’ve listed all of the main template files for bbPress, so the mass of parts contained in the /bbpress/ sub-directory is not included here. Also not included are the JavaScript, CSS, and other self-explanatory files. To illustrate, here is a screenshot showing the files that are covered in this post:

[ Screenshot of bbPress TwentyTen template-files ]
bbPress “main” template-files (dark-blue background)

bbPress main template-files

This isn’t a template hierarchy, just a list of main template files included with the default Twenty Ten theme. Along with any important notes, an example URL be included for each file. So to view any of these files, edit the example URL to something similar that exists on your site. If you’re working with a new installation of bbPress, you may need to create some “test” forums, topics, and replies to invoke all of the different template files. So without further ado..

/bbp-twentyten/archive-forum.php
	the main forum page (lists all forums)
	http://example.com/forums/

/bbp-twentyten/archive-topic.php
	list of topics (from all forums)
	http://example.com/topics/

/bbp-twentyten/bbpress-functions.php
	the bbPress functions file

/bbp-twentyten/single-forum-edit.php
	used for editing single forums
	(also used by BuddyPress for group forums)
	http://example.com/forum/htaccess/edit/

/bbp-twentyten/single-forum.php
	single-forum view
	http://example.com/forum/htaccess/

/bbp-twentyten/single-reply-edit.php
	edit any single reply
	http://example.com/reply/test-post/edit/

/bbp-twentyten/single-reply.php
	view any single reply
	http://example.com/reply/test-post/

/bbp-twentyten/single-topic-edit.php
	edit any single topic
	http://example.com/topic/basics/edit/

/bbp-twentyten/single-topic-merge.php
	merge any single topics
	http://example.com/topic/basics/edit/?action=merge

/bbp-twentyten/single-topic-split.php
	split any single topic
	http://example.com/topic/basics/edit/?action=split

/bbp-twentyten/single-topic.php
	view any single topic
	http://example.com/topic/basics/

/bbp-twentyten/bbpress/single-user-edit.php
	edit any single user
	http://example.com/users/username/edit/

/bbp-twentyten/bbpress/single-user.php
	view any single user
	http://example.com/users/username/

/bbp-twentyten/single-view.php
	template for creating custom pages
	http://example.com/view/popular-topics/
	to see how it works, add this to your functions.php file:

	add_action('bbp_register_views', 'view_popular_topics');
	function view_popular_topics() {
		bbp_register_view('popular-topics', __('Popular Topics'), 
		array('meta_key'=>'_bbp_reply_count', 'orderby'=>'meta_value_num'), false);
	}

/bbp-twentyten/taxonomy-topic-tag-edit.php
	edit any tag
	http://example.com/topic-tag/test/edit/

/bbp-twentyten/taxonomy-topic-tag.php
	view any tag
	http://example.com/topic-tag/test/

Page templates:
(all of these template-files may be viewed/tested by creating 
a page and applying the tamplate-name from the dropdown menu)

/bbp-twentyten/page-create-topic.php
/bbp-twentyten/page-forum-statistics.php
/bbp-twentyten/page-front-forums.php
/bbp-twentyten/page-front-topics.php
/bbp-twentyten/page-topic-tags.php
/bbp-twentyten/page-topics-no-replies.php
/bbp-twentyten/page-user-login.php
/bbp-twentyten/page-user-lost-pass.php
/bbp-twentyten/page-user-register.php

I hope this helps! I’m not a bbPress expert so plz don’t stone me if I missed something obvious (or not so obvious). Cheers!

Jeff Starr
About the Author
Jeff Starr = Creative thinker. Passionate about free and open Web.
Digging Into WordPress: Take your WordPress skills to the next level.

6 responses to “bbPress Theme Template Files”

  1. Doug Smith 2012/07/27 8:09 am

    I have a rather large bbPress 1.1 forum I’ve been putting off moving to the newer plugin version just because I know it’s going to be a lot of work getting everything tweaked just right. This post makes the theming part of the job much easier. Thanks!

  2. Just what I was looking for. Thank you!

  3. I’ve used bbPress on a couple of sites, but I found laboriously painful to modify, so I’ve been leaving it alone and tweaking styles here and there. It doesn’t seem to bother the average user as much as it does me.

    I’m about to create a new site using it, so I’ll have another look under the hood and see what ‘improvements’ i can make.

  4. Daniel Eckhart 2012/12/24 10:08 am

    Thanks for taking the time to write this up, Jeff! Very helpful to me this morning!

Comments are closed for this post. Something to add? Let me know.
Welcome
Perishable Press is operated by Jeff Starr, a professional web developer and book author with two decades of experience. Here you will find posts about web development, WordPress, security, and more »
GA Pro: Add Google Analytics to WordPress like a pro.
Thoughts
Watching. Waiting. Praying.
Got all of my free WordPress plugins updated for imminent WP 5.6 in early December. Pro plugin updates currently in the works.
7G Firewall now integrated into BBQ Firewall (free version). Pro version soon ;)
macOS Big Sur update complete. So far no crazy issues. Except TextEdit, which is completely screwed up and unusable. Replaced with free BBEdit.
Got so sick of macOS’ annoying “red dot” that I had to remove System Prefs from the dock. Come on Apple you can do better.
Beginning development of an Nginx version of 7G Firewall.
Happy Birthday to Perishable Press, celebrating 15 years online! :)
Newsletter
Get news, updates, deals & tips via email.
Email kept private. Easy unsubscribe anytime.