Skip navigation

Parent/Child Themes in WordPress: The Future of WordPress Themes

WordPress ThemesWordPress 2.7 now features parent/child WordPress Themes, a new feature that protects installed WordPress Themes while allowing customization. Customizations are storied in the “child” Theme, which loads first. If a Child Theme isn’t detected, WordPress loads the “parent” Theme.

If you do not intend on making any customization to your WordPress Theme on your WordPress blog, then this issue isn’t for you. If you are planning on designing your own Theme for your own use, then this also doesn’t pertain to you.

However, if you are using a WordPress Theme that you want to customize and not lose the customization features when the Theme upgrades, then this is information you need to know.

web design architecture and structure for WordPress ThemesIf you are designing WordPress Themes for the public, you need to understand how WordPress Child Themes work.

Creating a strong parent WordPress Theme framework is critical for WordPress Theme development, as described in Why I Created a WordPress Theme Framework by Justin Tadlock. With a solid framework in the parent Theme, the child Theme will integrate easily when the user makes changes to the Theme or wants to use a child Theme.

Think of the parent/child feature of WordPress like selecting blueprints for construction of your new home. You look at the various room placements and sizes, the layout, the traffic flow, the architectural specifications that you prefer. You know the decision of which floor plan to choose isn’t based upon the desire to have the walls in the kitchen painted yellow with green stonework, or the carpet in the bedrooms be blue with wood floors in the living areas. It isn’t about the wall paper, curtains, or paint. You just want the master bedroom far from the room where the kids will be playing and watching movies all night. The paint and carpets come later.

Once you have the floor plan and blueprints selected, and the house is under construction, then it’s time to start hunting up paint and carpet samples to begin the home decoration process.

The floor plan blueprint, in this simple analogy, is the parent WordPress Theme. It sets the overall structure of the design. The decorations are found in the Child Theme, with the stylesheet guiding the paint, carpet, wall paper, and home decorations.

Parent WordPress Themes come with their own design set, but the core feature of parent WordPress Themes is their ability to switch the design elements around with a child Theme.

This new feature will change how you use WordPress Themes in the future.

The Future of WordPress Themes

While part of the purpose of the parent/child WordPress Theme feature is to protect the original WordPress Theme from design changes, allowing the user to change the child Theme without impacting the original code, which makes upgrading Themes easier. The future of WordPress is moving towards implementation of auto-upgrading and installing of WordPress Themes, and reliance on parent/child Themes makes this process possible.

Web page architecture and structure with color variations for child wordpress themesIn the past, you would download and install any WordPress Theme and that would be it. If the license permitted it, you could customize the Theme to make it work for you and your blog. If a new version of that Theme came along, installing it on your blog would replace all your customization features. You’d have to spent time integrating your custom design modifications into the newly updated Theme. This left many Themes vulnerable to hackers as people didn’t want to go through the trouble of upgrading their Themes.

With automatic uploading and updating of WordPress Themes coming in a future version of WordPress, the parent/child Theme feature works for both purposes. The user can customize the child Theme, and next time the Theme is updated with patches, bug fixes, and security repairs, the customization features are not lost. They remain protected.

More importantly, the world of WordPress Themes will change as you will have two core choices in a WordPress Theme. You can choose a basic “parent” Theme or choose a parent Theme that has the “floor plan” or framework you like and then choose from among the various child Themes to create a customize version of the parent. This gives whole new meaning to the phrase “variations on a theme.”

For example, the popular Thematic Theme features the following child Themes to choose from to personalize the parent Thematic Theme:

Each is a variation on the Thematic Theme, giving the user a lot more options when they find the core look they like.

This makes choosing WordPress Themes for future compatibility with upcoming versions of WordPress a little more complex for long time users of WordPress, but easy for newer users not entrenched in older Theme design practices.

If you want total control over your WordPress Theme, and will not be uploading a replacement or upgrade from the WordPress Themes Directory, then it is up to you to ensure your WordPress Theme continues to be updated if security warnings are issued, and to update it yourself if WordPress changes.

If you do not want to mess around with the code of WordPress Themes, you now will have two options.

  1. You can download any WordPress Theme as before. If upgraded from the WordPress Theme Directory, it will be replaced, and any customization lost.
  2. You can download a parent Theme and then choose from among its one or more child Theme designs to customize the parent Theme. All customization will be stored in the child Theme.

I expect a lot of people to begin offering child Themes in addition to some interesting parent Themes. Be sure which type of Theme you are downloading when you choose one. You will need to choose a parent Theme and then a child Theme to paint the walls of your WordPress blog.

More Information on Parent/Child Themes in WordPress

Building a parent/child WordPress Theme isn’t difficult. For information on developing and working with parent/child WordPress Themes, here are some tutorials and helpful articles:



Site Search Tags: , , , , , , , , , ,

Feed on Lorelle on WordPress Subscribe Feedburner iconVia Feedburner Subscribe by Email Visit
Copyright Lorelle VanFossen, the author of Blogging Tips, What Bloggers Won't Tell You About Blogging.

16 Comments

  1. Posted December 30, 2008 at 6:11 am | Permalink

    Thanks, Lorelle, for an interesting post. I’m often looking at new themes and, until I saw it here, I wasn’t aware of the parent – child theme concept. The next time I’m looking for something new, that is something I’ll certainly be considering.

  2. Posted December 30, 2008 at 7:58 am | Permalink

    My blog is also built on Thematic – http://www.patdryburgh.net

  3. Posted December 30, 2008 at 8:37 am | Permalink

    This is great. I’m using an old version of a theme that now has been upgraded to 2.7 but when I looked into upgrading it would take DAYS to reapply all my customizations. I will wait for a parent/child theme I like and then hopefully won’t run into this problem in the future.

  4. Posted December 30, 2008 at 9:43 am | Permalink

    Justin Tadlock’s “Hybrid” is also set up for parent and child themes. ( http://themehybrid.com ) He currently has two child themes for it as well and a great support forum (paid to ask questions, but it is well worth it!!! – you can view the the forum without paying). I currently run my modification of Hybrid – that I change monthly to reflect the season.

  5. Posted December 30, 2008 at 10:47 am | Permalink

    Wow. I had no idea that WordPress had a framework in place for a parent/child theme, and it’s nice to know that this feature exists. However, the part that I’m difficulty with is that it appears, based on a few of your additional links that I read, that child themes are ONLY for dealing with changes to the CSS, not changes to the actual PHP-HTML code that controls the look-and-feel of the style. If that’s the case, then this will not be very useful to me because I make all kinds of edits and customizations to the code itself, but not very many for the CSS.

    I think that this would be much more useful if it could have the ability to inherit template files as well. For example, any files that I put into the child theme will be read in the child theme, but any files that I DON’T put into the child theme will instead be read from the parent theme (the way that ALL of the files except style.css and functions.php are right now). That would be much more useful for me, because even with this current parent/child thing, I still can’t upgrade themes very easily for fear of it overriding the many edits I’ve made to the template itself.

    Personally, I think that the way WordPress deals with themes (in terms of how the code is organized) is fairly archaic and hasn’t seen any significant improvements since the concept of WordPress themes was introduced with WP 1.5 nearly four years ago. This new framework for parent/child themes is definitely a step in the right direction, but I think that a number of other fundamental changes in the concept of WordPress themes need to happen before the concept of an auto theme updater will be fully accepted by the WordPress community.

  6. Posted December 30, 2008 at 12:09 pm | Permalink

    @Douglas parent-child themes work exactly as you hope they would—that’s the big upgrade in 2.7.

    @Lorelle Thanks for the attention!

    • Posted December 30, 2008 at 10:16 pm | Permalink

      @Ian: The work you have done to turn the WordPress Community on its righteous ear to really change how we handle Themes is much appreciated and honored. You are doing great work! Thanks for pushing this through as it is a fantastic idea and the community will really benefit. It’s early days and a lot of work to spread the word and teach people how this all works is critical to making it a success. Thanks again for being a driving force in this process.

  7. Posted December 30, 2008 at 2:58 pm | Permalink

    Unfortunately, the theme repository at wordpress.org doesn’t accept child themes, meaning that designers are forced to bundle the base theme files along with their own if they want to take advantage of the auto-install/upgrade features promised in the future. Which sort of defeats the point of building a child theme in the first place.

    In an ideal world, the developers would bundle a theme framework with the next release of WP (Kubrick is showing its age) and illustrate the concept of child themes by actually including a few. They could even run a community contest to build a child theme in a couple of days, like the one they did for icons. But since the impetus towards child themes is coming from the community rather than from within Automattic, it seems unlikely. I worry that instead they will focus on auto-update, which will effectively discourage people from downloading themes anywhere other than wordpress.org and leave child themes dead in the water :(

    • Posted December 30, 2008 at 10:12 pm | Permalink

      @that girl again: Child Themes are new. People barely know about them, let alone how to create or use them. The WordPress Theme Directory is also WAY slow in getting going on many levels, so have patience with them, too. We’re all in such a hurry. :D We want it NOW.

      I agree that a Theme framework within the core default would be a fabulous idea. Up for the challenge? :D

  8. Posted December 30, 2008 at 3:19 pm | Permalink

    I worry that instead they will focus on auto-update … and leave child themes dead in the water

    This still makes the directory, frameworks & Child Themes great for commercial uses like keeping your client’s code up to date with code fixes (that don’t change the basic HTML-CSS structure). All your WordPress design clients can get an auto-update note and one-click later their theme is updated. In this instance, it doesn’t really matter if your Child Themes are in the directory.

    As for Automattic, Andy Skelton seemed to be pretty supportive, encouraging me to code up a patch for added Child Theme functionality (other, more intelligent and beautiful people ended up coding that patch). I think his support of the idea was instrumental in getting that patch through.

  9. Posted December 30, 2008 at 4:41 pm | Permalink

    An awesome implementation undertaken. I’m glad to see such a feature incorporated.

  10. Posted December 30, 2008 at 6:43 pm | Permalink

    That Girl Again:

    Matt Mullenweg has stated that Child Themes are acceptable on the wordpress.org theme repository. You do have to follow the updated policy and it has to be of quality.

  11. Posted December 31, 2008 at 3:15 pm | Permalink

    Hi Lorelle – This post came at the perfect time as I’m in the process of changing my theme and the one I’m serious about has the parent/child feature. I’ll be back to reread this post in the near future.

  12. Posted January 1, 2009 at 7:50 am | Permalink

    @Jason: link, please? All I know is that they weren’t allowed a few months ago and I can’t find any more recent statements on the subject, nor can I see any child themes in the directory. If the policy has changed that’s great.

    @Ian: yes, I’d expect Andy to be supportive given his role in creating Sandbox, but he doesn’t seem to have as much influence within Automattic as I’d like ;). If they won’t even implement a base theme that an Automattic employee has been involved with, I’d say our chances of getting a framework bundled with a future version are slim to non-existent.

  13. Ari
    Posted January 14, 2009 at 7:03 pm | Permalink

    I agree with @Douglas that the whole paradigm of WordPress themes is archaic and needs to be re-thought from the ground up.

    The future of blog customisation is not installingthemes, but changing the look and feel of the blog using a simple WYSIWYG interface. A perfect example is Artisteer.

    You should be able to point-and-click to select page layout (no. of columns, sidebar, etc), background color, menu styles, fonts,etc etc, without going into code/CSS editing or relying on 3rd-party theme developers who may or may not upgrade their themes.

    In short, it’s time to make a quantum leap and abolish themes altogether.

  14. varindia
    Posted July 19, 2012 at 5:42 am | Permalink

    Creating a parent a parent theme is indeed require enough knowledge in WP.Every webmaster wants his/her site to be unique, hence customization is necessary and its much easier with child and as par the complexity of the project, the child theme need to be developed.


35 Trackbacks/Pingbacks

  1. [...] See more here:  Parent/Child Themes in WordPress: The Future of WordPress Themes … [...]

  2. [...] I’m using thematic. It’s a cool, customizable layout and I want to learn more about child themes. This entry was posted in The Site. Bookmark the permalink. Post a comment or leave a trackback: [...]

  3. [...] “Parent/Child Themes in WordPress” [...]

  4. [...] uit zeg..” dan heb je helemaal gelijk. Ik ga me eens verdiepen in de WordPress Framework en child themes en waar kan ik dat beter uittesten dan op m’n eigen [...]

  5. [...] non seulement d’un framework hautement configurable par l’utilisation des thèmes fils (child themes), mais aussi d’un thème à part [...]

  6. [...] “Parent/Child Themes in WordPress” [...]

  7. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes [...]

  8. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes [...]

  9. [...] “Parent/Child Themes in WordPress” [...]

  10. [...] この1.1バージョンではテンプレートアーキテクチャが1.0.3バージョンまで利用されていたBuddyPress独自のではなく、WordPress 2.7シリーズより利用可能になったParent/Child Themeアーキテクチャーが利用されます。(ただし従来のテンプレートもまだサポートされる) [...]

  11. [...] der in WordPress 2.7 eingeführten “Parent/Child”-Technik (zu dt. Eltern/Kind) können Themes auf ein Parent-Theme (Eltern-Theme) aufbauen und [...]

  12. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes Filed under Articles, WordPress Themes Tagged child theme, customization, parent theme, template, theme, theme inheritance, WordPress Comment (RSS)  |  Trackback  |  Permalink [...]

  13. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes – by Lorelle VanFossen [...]

  14. [...] for everything related to the California outdoors. We built this WordPress website by customizing a child theme of the popular Mimbo magazine theme. Other customizations include a most popular posts list, [...]

  15. [...] Child Themes: The efficient way to modify WordPress themes November 24th, 2009 by Kasper Sorensen No comments Ever had to modify a WordPress theme, and struggled to find your way around the CSS or template files? Or, have you ever had to update a theme, just to lose all you modifications? Use child themes to modify your blog design. [...]

  16. [...] Here are the first few words: Ever had to modify a WordPress theme, and struggled to find your way around the CSS or template files? Or, have you ever had to update a theme, just to lose all you modifications? Use child themes to modify your blog design. [...]

  17. [...] Since he did that on Friday, it was my turn to fulfill my end of the deal. I installed P2, made a child theme to start tweaking it to my liking with barely any effort and voilà: simple, clean, effective, I [...]

  18. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes « Lorelle on WordPress Creating a strong parent WordPress Theme framework is critical for WordPress Theme development, as described in Why I Created a WordPress Theme Framework by Justin Tadlock. With a solid framework in the parent Theme, the child Theme will integrate easily when the user makes changes to the Theme or wants to use a child Theme. [...]

  19. [...] Themes in WordPress: The Future of WordPress Themes (December 30, 2008) http://lorelle.wordpress.com/2008/12/30/parentchild-themes-in-wordpress-the-future-of-wordpress-them… This entry was written by Gnocchi, posted on December 21, 2009 at 7:36 pm, filed under [...]

  20. [...] this post looks at why child themes are the future of WordPress. It also includes a solid list of example [...]

  21. [...] Parentchild Themes WordPress [...]

  22. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes « Lorelle on WordPress (tags: buddypress) [...]

  23. [...] Parent/Child Themes in WordPress: The Future of WordPress Themes [...]

  24. [...] in point 15 in that previous tutorial.) Buddymatic itself is a theme framework which includes some child themes, so you don’t need to install EarlyMorning. But installing it is easy enough that I’m [...]

  25. [...] Lorelle’s Parent/Child Themes in WordPress: The Future of WordPress Themes [...]

  26. [...] 테마란 “PARENT/CHILD THEMES IN WORDPRESS: THE FUTURE OF WORDPRESS THEMES“, “Frameworks, Child Themes, Filters, and Hooks?“, “Why I created a [...]

  27. [...] 2. http://lorelle.wordpress.com/2008/12/30/parentchild-themes-in-wordpress-the-future-of-wordpress-them… [...]

  28. [...] in recent years, a third option has entered the picture: WP theme frameworks. And many are predicting that they will completely take over. But what exactly are [...]

  29. [...] good folks at WordPress have a solution; child themes. A child theme inherits all the functionality of another theme, the parent, allowing you to modify the look, feel and functionality of it without causing problems when that [...]

  30. [...] all themes were standalone packages, and the theme folder will contain all associated files.Parent-Child – Since WP 2.7 we’ve had the ability to have parent-child relationships in theming! [...]

  31. [...] Codex (documentation): Child Themes and Theme Frameworks and a few links about them Lorelle, Justin Tadlock, and theme [...]

  32. [...] 테마란 “PARENT/CHILD THEMES IN WORDPRESS: THE FUTURE OF WORDPRESS THEMES“, “Frameworks, Child Themes, Filters, and Hooks?“, “Why I created a [...]

  33. [...] Creating a strong parent WordPress Theme framework is critical for WordPress Theme development, as described in Why I Created a WordPress Theme Framework by Justin Tadlock. With a solid framework in the parent Theme, the child Theme will integrate easily when the user makes changes to the Theme or wants to use a child Theme. Think of the parent/child feature of WordPress like selecting blueprints for construction of your new home. You look at the various room placements and sizes, the layout, the traffic flow, the architectural specifications that you prefer. You know the decision of which floor plan to choose isn’t based upon the desire to have the walls in the kitchen painted yellow with green stonework, or the carpet in the bedrooms be blue with wood floors in the living areas. It isn’t about the wall paper, curtains, or paint. You just want the master bedroom far from the room where the kids will be playing and watching movies all night. The paint and carpets come later. Once you have the floor plan and blueprints selected, and the house is under construction, then it’s time to start hunting up paint and carpet samples to begin the home decoration process. The floor plan blueprint, in this simple analogy, is the parent WordPress Theme. It sets the overall structure of the design. The decorations are found in the Child Theme, with the stylesheet guiding the paint, carpet, wall paper, and home decorations. Lorelle on WordPress [...]

  34. [...] 테마란 “PARENT/CHILD THEMES IN WORDPRESS: THE FUTURE OF WORDPRESS THEMES“, “Frameworks, Child Themes, Filters, and Hooks?“, “Why I created a [...]

  35. […] fact, it was introduced in WordPress 2.7 and has been a part of it since […]

Post a Comment

Follow

Get every new post delivered to your Inbox.

Join 20,970 other followers

%d bloggers like this: