How to Create a Child Theme for the purpose of modifying bbPress
-
The codex page for this is outdated and a lot of the threads are for older versions so here is a version for WP 3.8, bbPress 2.5.2.
Resources
Here are the pages from which I pieced this together.
http://codex.bbpress.org/step-by-step-guide-to-creating-a-custom-bbpress-theme/
http://codex.wordpress.org/Child_Themes
http://op111.net/53/
http://perishablepress.com/bbpress-theme-template-files/
http://www.hongkiat.com/blog/wordpress-child-themes-dev/Initial Setup
Install WordPress and bbPress.
Step #1: Create a child theme of your WordPress theme.
Even though what you’re wanting to change is bbPress and not your WordPress, there are not separate themes for plugins, so you need to create a child theme of whatever WordPress theme you are using to have a place to put the bbPress plugin child theme files. This will ensure that any updates to bbPress or your WordPress theme will not overwrite your changes. Here is how you create a child theme:
1. FTP to your website
2. Go to ../wp-content/themes
3. Create a new folder for your child theme. Name it yourtheme-child for the sake of organization.
4. Create a new file called style.css and add the below, changing the valuesto the value for your child theme. The critical fields are Theme Name, Template, and the the parent theme directory name (which should be the same as “Template”) in the @import. Everything else is used by wordpress.org for categorizing templates so don’t stress if you don’t know what to put there:/* Theme Name: Your Theme Name Child Theme URI: Your website if you don't intend to publish a separate site just for your theme Description: A brief description of your child theme Author: your name Author URI: your website Template: parent-theme-directory Version: 1.0.0 Tags: whatever tags you might want to use for your child theme */ @import url("../parent-theme-directory/style.css"); /* =Theme customization starts here -------------------------------------------------------------- */
5. FTP your newly created style.css to ../wp-content/themes/yourtheme-child
Step #2: Add your bbPress Child Theme files to your WordPress Child Theme
1. Create a folder called “bbpress” on your local machine.
2. FTP to ../wp-content/plugins/bbpress/templates
3. Download the contents of the “Default” folder to the “bbpress” folder on your local machine
4. Edit the files you want to change for bbPress (see bbpress-theme-template-files link under resources above).
5. Delete any files you haven’t changed. You can skip this step if it’s confusing, but you should try to only upload files you’ve changed.
6. FTP to ../wp/content/themes/yourtheme-child
7. Create a folder called “bbpress” inside yourtheme-child
8. Copy the contents of the “bbpress” folder in your local machine to the “bbpress” folder inside your child theme folder.Step #3: Activate your Child Theme
Once you have created your child theme and made changes to the bbPress files in the child theme, you need to activate the child theme in order to see the changes on your site.
1. Log into your WordPress admin panel
2. Go to Appearance -> Themes
3. Find your child theme. It would be the same as the “Theme Name” you gave it in the first line of the style.css you created in Step 1.
4. Click “live preview” and make sure nothing has gone horribly wrong.
5. Activate the child theme.Since you didn’t change any files from your wordpress theme, the theme for the site will be inherited from the parent theme so the only changes you should see are the changes you made to the bbpress files that you uploaded to your child theme. The only problem I encountered was that because it was a new theme, my custom “header top menu” was not associated with the theme, so I just had to go into the menu and check the box to tell it to use that custom menu as the header menu.
- You must be logged in to reply to this topic.