Select Page

Child Themes are a relatively new concept in WordPress being fully implemented in v3.0.

Residing in their own theme directory, Child Themes inherit the base functionality of the “parent” theme allowing you to add, remove or extend the features it provides.

Advantages of Using a Child Theme

Essentially, if you find a good theme that will provide you with 90% of the functionality you would need, creating a child theme of the parent would allow you to develop the remaining 10%, hopefully faster and cheaper.

The added benefits of extending a commercial parent theme with a Child Theme is that you can still continue to receive updates to the parent without overwriting all your Child Theme changes.

Disadvantages of Using a Child Theme

The biggest disadvantage of using a Child Theme is certainly in the performance department.

This may not be an issue if your theme is small with few functions.

However, if your theme is large and offers many more complex functions, you may see a performance hit if you implement a Child Theme as the core functions in the Parent Theme will also be referenced.  Essentially doubling the read times for certain functions.

This is just the way a Child Theme works.  The Parent Theme is loaded in first then the Child Theme is loaded in and any changes or additional functionality implemented.

First Step in Creating a Child Theme

Create a new folder in /wp-content/themes/ for your Child Theme to reside in.

Next, create and save a new file called style.css in the Child Theme folder you just created using the code below.

[sourcecode language=”css”]
@charset “UTF-8”;
/**
* Theme Name: TwentyElevenExtended
* Theme URI: http://www.gravitationalfx.com/
* Description: Child theme based on the TwentyEleven theme.
* Author: Gravitational FX
* Author URI: http://www.gravitationalfx.com/
* Template: twentyeleven
* Version: 0.1
*/
@import url(‘../twentyeleven/style.css’);
[/sourcecode]

The above code sets up your Child Theme to extend the TwentyEleven theme that ships with WordPress v3.x.

The format is the same as creating a normal theme with the addition of two extra lines.
Line 8: Template: twentyeleven – this is the name of your Parent Template
Line 11: @import url(‘../twentyeleven/style.css’); – imports the style sheet of the Parent Template

Finishing Off

Creating a whole Child Theme is out of the scope of this article, however, you can follow the Child Theme example from the WordPress Codex which will take you through the basic steps in creating a simple Child Theme.