A Review of Drupal 6 Starter Themes

Profile picture

Perusing the themes available on drupal.org reveals that there are over seven starter themes for Drupal 6 in addition to Zen, the original "starter" theme for Drupal. Starter or "base" themes are a class of themes that seek to provide best-practices starting points for themers to build unique designs. Most include a common set of features necessary for most sites, helping to minimize the repetition of a themer recreating many similar files, markup and code for each project. Also, using the same starting point and similar methods helps with forward maintainability and makes it easier to collaborate within a team.

There are a number of factors that weight ones preferences in a starter theme, such as layout techniques, SEO optimization, accessibility, code/file simplicity, and good documentation and code comments. The fact that there are this many starter themes suggests that many recognize their utility. It also reflects different preferences on what to include in a starter theme. You might also take a look at this Drupal 6.x Starter Theme Comparison table.

It's a daunting task to review this number of themes, and so it would be great to hear from anyone who has had more experience with any of these, as I have relied on Zen for clients projects. All of the themes I review here have table-less layouts, provide IE-specific CSS files, have valid XHTML markup, and run on Drupal 6.

Zen

Created by Jeff Robbins and currently maintained by John Wilkins

Most Drupal heavies are already familiar with the Zen theme. There are many resources that explain the logic behind Zen and how to use it. I will highlight some of Zen's features in order to contrast it with the themes I am reviewing.

Zen is geared toward allowing themers to do nearly all their customization via CSS in a subtheme without having to edit (much) PHP or HTML. Prior to Drupal 6, all sub themes needed to be placed inside the Zen theme folder, but now you can place your subthemes on the same level as the Zen theme folder, a nice new feature. It uses a negative margin technique to achieve a content first source order, which is useful for SEO optimization and accessibility. Advancing the designer-friendly goal further, it offers configurable options in the theme settings for fixed-width or fluid-width layouts and options for the display of the breadcrumb links. In particular, I like its tabs, which utilize the sliding door technique with background images. It also renders edit links in blocks, a great usability feature.

Zen is flexible and feature-rich in order to fit most any scenario. There are a lot of files and code involved, and it can be overwhelming to fully learn how it works inside and out. But with everything Zen provides, many find it much easier to start with it rather than starting from scratch or building on top of an another theme.

Highlights:

  • fixed-width or fluid layout
  • subtheme framework
  • content first source order
  • graphical tabs
  • block edit links
  • accessibility features: skip navigation link
  • plenty of CSS selectors and divs for endless theming possibilities 
  • theme setting options: fixed-width or fluid-width; formatting for breadcrumb links
  • graphical styles for status, warning and error messages
  • “blank canvas” appearance

Basic

Created by Steve Krueger

Basic is described as a striped-down version of Zen. It features extensible
CSS classes and IDs, and content-first source order with fixed or fluid width.
Its code and CSS are well documented. It also includes some of Zen's
indispensable features, like tabs and block editing/admin links. The most notable difference is that Basic does not include the subtheme framework of Zen, which not everyone needs for their particular purposes. It also does not offer any special configurable options in the theme settings, as Zen does. One unique and very cool feature to Basic is that it detects the end user's browser and provides different body classes depending on the browser.

Also notable is that it provides reusable CSS classes for handling floating and clearing elements in the style.css file, including .clearleft, .clearright, .clearboth, .floatleft, .floatright and .clearfix. The rest of the css files are neatly placed within a /css sub directory which includes most of the same CSS files as Zen: tabs.css, print.css, layout-fixed.css, layout-liquid.css, ie6.css, ie7.css, plus a main.css intended for more design specific styling. Another feature of the CSS is that there are background colors for each part of the layout so that they stand out during the design process.

In terms of template scaffolding, the node.tpl.php it makes it easy for designers to handle their teaser differently by providing clearly marked area for markup sent to the teaser along side HTML sent to a full page. This can cut down on the number of template files necessary to theme teasers separately, while also not requiring a themer to code any PHP.

Highlights:

  • fixed-width or fluid layout
  • content first source order
  • graphical tabs
  • block edit links
  • accessibility features: skip navigation link
  • plenty of CSS selectors and divs for endless theming possibilities
  • reusable classes for floating and clearing boxes

Beginning

Created by Robin of biboo.net

Beginning has a centered fixed width layout supporting one, two and no sidebars. It uses negative margins for a content-first source order. It boasts 10 regions, with all the usual suspects, plus three additional 300px wide footer regions that sit three in a row. It also duplicates the display of primary links at the bottom of the page. It has nicely themed status, error and warning messages, with graphics for each, similar to the Zen theme.

A few marks against it: in page.tpl.php there is some HTML inside of PHP,
which is not usually recommended as it makes it more difficult to read the HTML. Also it's missing "skip navigation" links in page.tpl.php, necessary for accessibility. Also, it does not allow for the logo and site name and/or site slogan to appear simultaneously.

Highlights:

  • fixed-width centered layout
  • content first source order
  • accessibility features: skip navigation link
  • graphical styles for status, warning and error messages
  • three additional parallel 300px wide footer regions

Blueprint

Created by Theodore Serbinski

Blueprint uses the Blueprint CSS framework, which offers a CSS based grid system, a starting point for styling where pre-defined selectors make layout and box elements line up, including font and blocks of text. Many prefer and highly recommend the use of a CSS framework.

I like the light styling on form elements. One unusual thing I noticed is that the names of CSS selectors for all the layout elements are defined inside template.php. So in page.tpl.php the sidebar div will have a print $left_classes variable where the exact names of the classes will be defined in template.php. I do not see any improvements for this arrangement and would make this theme more difficult for designers to use. It would be nice if this theme had skip navigation links for accessibility.

Highlights:

Framework

Created by Andre Griffin

Framework is a solid theme that has a simple code, file structure and layout techniques. It's a fixed width theme that supports one, two and three columns. It also has good documentation through out the code. The CSS is contained it a single well organized and commented style.css file, which includes an proximate pixel font size to em font size table. What a useful resource to in the CSS file! Unlike Zen, it does not use the negative margins to accomplish a content first source order, which may appeal to anyone who finds that the added complexity of the negative margin technique is not always worth its benefits.

There is a bit of color in this theme, and it includes special styling of admin pages, which I find easy on the eyes. There is a function to apply even/odd classes to menu lists. The layout and content has a bare minimum of divs. So if, for example, you wanted to add rounded corners to the design, there are not quite enough divs available for that.  A couple marks against it are that in the page.tpl.php it has a bit of HTML inside of PHP and it does not have the "skip navigation" link in the source for accessibility.

Highlights:

  • centered fixed-width layout
  • content first source order
  • basic floats for multi-column layout
  • graphical styles for status, warning and error messages
  • three additional parallel 300px wide footer regions

Flexible

Created by Steve Lockwood

This theme has minimal CSS styling, but offers a flexible-width or liquid layout and features configurable accessibility options. It hooks into the theme settings API to enable the theme to offer users the option to switch the page layout from two or three column layout to a linear layout, increase the font sizes and switch between color schemes. It also gives you the option to move these font, color scheme and layout switchers to any block region.

Flexible also provides configurable rounded corner styles through the theme settings for most elements of the page. This feature does complicates the page.tpl.php with a bit more PHP code and adds a separate folder for each rounded corner style with its own images and CSS file. Depending on one's preferences this may or may not be desirable. The theme's settings options also allows you to add classes to specific blocks, specify additional style sheets and add inline styles that will apply to all pages. All in all, an impressive amount of customization that can be made through configuration. Themers looking to explore the settings API should start here for a good example.

Highlights:

  • fixed-width or liquid layout
  • accessibility features: skip content and skip navigation links; configurable options for providing users with the ability to adjust font size and color scheme
  • graphical styled status, warning and error messages
  • lots of options via the theme settings API

Foundation

Created by Rowan Kerr

This is a really simple "blank canvas" starter theme with clean code and CSS that is well commented. It's similar to Framework, but without the even/odd selectors on menu lists and with less colorized styles. The only thing that I would say is missing is a "skip navigation" link.

Highlights:

  • liquid layout
  • "blank canvas" appearance
  • basic floats for multi-column layout
  • clean easy to read code/markup

Genesis

Created by Jeff Burnz

Genesis is most comparable to Zen. It uses negative margin for the content first layout and has a sub theming framework. It also has Zen'z tabs, and admin block editing links. The sub themes have many empty CSS selectors setup. The project page provides video tutorials on how to get a sub theme up and running as well as how to use Firebug for fast prototyping of styles. It offers the easy ability to select from seven different layouts by changing the ID selector on the body tag in page.tpl.php.

The main differences I can find from Zen is that Genesis does not offer configurable options in the theme settings. It also organizes it's 10 CSS files into a /css sub-folder with instructions on how to select which CSS files to use. Alternatively it is possible to minimize the number of CSS files used in the theme by selecting all-in-one.css file, which aggregates the CSS of all the other files (which is useful when dealing with the 31 CSS file limit with Internet Explorer). It also places the code for IE specific CSS in page.tpl.php. One thing missing is a skip navigation link.

Highlights:

  • fixed-width or fluid layout
  • subtheme framework
  • content first source order
  • graphical tabs
  • block edit links
  • nice amount of CSS selectors and divs for many theming possibilities
  • "blank canvas" appearance
  • clean easy to read code/markup

Comments

It's great to see the amount of work going into streamlining the design-to-theming process for Drupal. Thanks again for reviewing Basic. A few of the features that you mentioned, such as the ability to clear the theme registry, will be in the next commit :). Additionally, there's one 'smaller' feature that wasn't mentioned that I think deserves its 15 minutes.

In Basic, we have added conditional classes that pick up on the end-users browser. This data then gets inputted into the "body" class which will allow the themer to specifically target browsers more correctly (gone are the days of conditional ie stylesheets!). We have support for the following browsers:

  • Firefox 2 and 3 (each version outputs their own class name)
  • Opera
  • Safari
  • Internet Explorer 6, 7, and 8

If there are any features that you think are missing that this framework could benefit, please feel free to open an issue in the issue queue!

The browser specific body classes are a very cool feature! Which I had not noticed. I updated my post to add that info. Thanks for reading!

Nice review.
Thanks.

Question:
Is there some Drupal starter theme for D6 based on 960.gs ?

There is no D6 theme using the 960 Grid System, at least not any starter theme. However, for D7 appears there is a theme in the works using it.

Actually there is: http://drupal.org/project/ninesixty

And Fusion is 960.gs-based: http://drupal.org/project/fusion

There ia also a Zen subtheme based on 960gs
http://drupal.org/project/zen_ninesixty

I'm gutted you missed Clean theme off the list. Did you know about it when you did this base theme round-up?

http://drupal.org/project/clean

Oh my! I did not see this theme when I started writing this review. My mistake. Sorry! At first glance it looks like a great theme. When I get a chance I will add it to my review.

I have used Clean for a client's website and found it very easy to use.
Great theme!

Thank you. And of course the users will be there to provide corrections after the fact.

Thanks for reviewing my theme, really good write up. I just wanted to explain why I omitted the traditional skip to nav/skip to content type links.

For each page.tpl.php (and lets face it, most modern Drupal sites have many) where is the content and where is the main navigation? These are determined on a site by site, page by page basis.

Its easy to add skip links where and when they are required and I do not think its easy to assume a default.

I also offer you a correction, the Framework theme is not content source ordered. It uses the same Jello-mold layout as Garland which is not a source ordered technique.

Thanks,

jmburnz
Creator of Genesis.

no more "HTML inside of PHP" in the pretty new 1.6 release of Begining http://drupal.org/node/462568
thanks for this article

regards
robin (beginning + beginningW2)

Thanks for the info. More choices to start building solid drupal themes.

It is nice to set a list of the starter themes, but I find this comparison a bit short. Some themes have features that are not mentioned here, like 'wireframe mode' that are in Zen and Basic, template flexibility, state of the template.php etc...

Maybe list less and develop more would be a better way to guide user into choosing there theme starter.

An now another entry into the starter theme arena:
http://drupal.org/project/fusion

---snip---
Fusion is a powerful base theme, with layout and style configuration options built in that you can control through Drupal's UI. It's based on a simplified 960px or fluid 16-column grid. It's designed to be used with the Skinr module, with numerous block styles included.

Don't theme yourself into a corner. Our goal is to make Fusion the clear, simple, and supported option for creating advanced Drupal themes.
---snip---

I'm personally a bit overwhelmed. I want to theme using the starting theme "framework" that will come out on top in the long-term. I started with Zen, and now am considering Genesis. Today I find Fusion ... Oh My!

Hi,

You should add an executive summary. ALl I did was come to your article, scroll to the bottom looking for the conclusions, and then basically left looking for more information with less reading on some other site.

Apparently you and some of your readers have a lot of time to burn leisurely reading articles. This is the web people, we need information FAST................................

BYE

zfoknu, http://URBANWORSHIP.ORG , How To Lose Weight Fast rxshmpt
srlwpy, http://SCOREADVANCE.NET , qfsrhdg
mmbyur, http://mercedesofsouthatlanta.com, How To Lose Weight Fast stevjug

Add comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <br> <br/> <br /> <p> <img> <blockquote> <i> <b> <u>
  • Lines and paragraphs break automatically.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.

Client Testimonial

Working with Chapter Three was great! They understood the development workflow perfectly and accommodated our needs to handle the theming and IA of the site. Add to this the short timeline and last minute changes they put up with. One area that Chapter Three really helped was setting up the development environment for us. This has proved invaluable to managing the site and pushing new features.

Michael Shaver, Web Administer, Intel Moblin Case Study

Drupalcon SF 2010