Last updated 21 April 2016. Created on 4 August 2010.
Edited by JohnAlbin, Christopher James Francis Rodgers, xjm. Log in to edit this page.

What are base themes, sub-themes and starter themes?

Often the best way to learn a system is to take an existing example and modify it to see how it works. One big disadvantage of this learning method is that if you break something and the original example worked before you hacked it, there’s very little incentive for others to help you.

Drupal’s theming system has a solution to this problem: parent themes and sub-themes. A “sub-theme” will inherit all its HTML markup, CSS, and PHP code from its parent theme (called a “base theme”.) And with Drupal themes, it’s easy for a sub-theme to override just the parts of the parent theme it wants to modify.

A “starter theme” is a sub-theme designed specifically to be a good starting point for developing a custom theme for your website. It is usually paired with a base theme.

So how do you create a theme with Zen?

The Zen theme includes the Zen base theme as well as a starter theme called “STARTERKIT”. You shouldn’t modify any of the CSS or PHP files in the zen/ folder; but instead you should create a sub-theme of zen and put it in a folder outside of the root zen/ folder.

Detailed instructions on how to create a Zen sub-theme are available for each major version of Zen.

Looking for support? Visit the forums, or join #drupal-support in IRC.