Community Documentation

Creating a theme with Zen

Last updated March 25, 2011. Created by xjm on August 4, 2010.
Edited by JohnAlbin, Christopher Jam.... 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” (also 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.

Comments

7.x-5.x

and where I could find instructions about 7.x-5.x?

Would like to know this too!

Would like to know this too!

The module Zenophile 7.x-1.1 works with theme Zen 7.x-3.1,
but Not with Zen 7.x-5.x. See...

There won't be a new release of Zenophile for Zen 5, But thanks for using Zenophile in the past.

Drupal 8 is great.
###

Page status

No known problems

Log in to edit this page

About this page

Drupal version
Drupal 6.x, Drupal 7.x
Audience
Designers/themers, Programmers, Site administrators
Drupal’s online documentation is © 2000-2013 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License. Comments on documentation pages are used to improve content and then deleted.