| Drupal 6 Themes | ||
|---|---|---|
| Author | Ric Shreves | ![]() |
| Publisher | Packt Publishing / Birmingham | |
| First published | September 2008 | |
| Pages | 312 | |
| ISBN | 978-1-847195-66-1 | |
| List price | €30.99 (Ordering / Product information) | |
Drupal is a widely adopted open source Content Management System. For it's users, this wide adoption brings a number of advantages like, for example, well maintained code and ready to use solutions to many standard problems, but there is also one inherent disadvantage.
Out of the box, every Drupal installation looks the same. Being indistinguishable from other websites is a no-go in the web 2.0 world. Contributed themes may lessen this problem to a degree, but even they reach their limits, when corporate design becomes a requirement.
In his book, "Drupal 6 Themes", Ric Shreves sets out to show, how Drupal's theming layer works, how existing themes can be customized and how to create new themes from scratch.
Structure and content
"Drupal 6 Themes" consists of nine more or less independant chapters, which cover the individual aspects of theming Drupal. In large parts, it is more a work of reference than a tutorial with a central theme.
Chapter one introduces the reader to the underlying concepts of Drupal's theming system.
Google AdSense Square
Chapter two makes a short detour to basic, theme related system configuration. It's target audience are theme designers who provide themes for a variety of platforms and are not familiar with Drupal, yet.
Chapter three provides a roundtrip through available theming options. It mainly deals with PHPTemplate, but also mentions PHPTAL, Smarty and PHP XTemplate briefly as alternatives.
Chapter four mainly contains a work of reference. It lists all the themeable functions, variables and CSS files of Drupal's core modules.
Chapter five and six describe how to actually adapt the appearance of given themes to one's needs by either overriding individual functions or creating a complete subtheme.
Chapter seven finally gives instructions for building a completely new theme from scratch.
Chapter eight takes theming one step further by demonstrating Drupal's ability to dynamically style content. The techniques, discussed in this chapter allow to display content differently depending on conditionals like the login state of the viewing user or the id of individual nodes.
Chapter nine covers the styling of forms.
Appendix A contains a catalog of all core CSS files and their selectors.
Appendix B lists Drupal modules and firefox extensions, potentially useful to theme developers.
Conclusion
In the preface, Ric Shreves makes an apology for having written the book from a designers point of view, which may not always meet the expectations of a hard core software developer. This is not the best way to make an introduction, as it begs the question, why a known problem was not fixed in the first place.
Indeed, when reading "Drupal 6 Themes" with a background in software development, one easily gets the impression of the book being something like a scrapbook style version of a tutorial, where separate ideas grew until they finally formed chapters.
A second demerit, the book earns is for not being clear about it's target audience. Some parts are obviously written with theme designers in mind, who want to add Drupal theming to their portfolio, while others seem to address Drupalists, who are more interested in giving their site a personal touch.
All in all and despite the aforementioned drawbacks, "Drupal 6 themes" works well as a jump start and as reference book for theming. The undecidedness concerning a target audience makes giving a recommendation a bit difficult, though.

