About the First Edition

The first definitive, in-depth guide to customizing Drupal web sites with behaviors, themes, and templates.

As web designers and developers adopt Drupal, they quickly find themselves wanting to customize the visuals and interactivity of the sites Drupal creates. Drupal offers powerful front-end customization capabilities, but practical information about using them has been scarce - until now. Front End Drupal fills this sizable marketplace gap by focusing on visual and interactive design, rather than module development. Two leading Drupal developers systematically cover Drupal customization with behaviors, themes, and templates. Readers will master each layout element needed to style Drupal sites, and learn how to take full advantage of Drupal's powerful templating system. The book also contains several start-to-finish case studies for creating and customizing a wide range of Drupal sites, from scratch. Front End Drupal will contain a foreword by the founder and community lead of the Drupal project, Dries Buytaert.

Praise for Front End Drupal

Dries Buytaert wrote the foreword for the book in which he says, ….

“Drupal has always been a developer’s platform, even with the many designers in our ranks. It’s about time those designers had a great book. In fact, this book is valuable not just to the designers we have, but to the designers we want….” Dries goes on to cite a survey he conducted in 2008 which listed “Finding skilled Drupal designers” as the top entry on the list of the “Top five most difficult things,” according to both expert and novice users.

Addison Berry, Documentation Team Lead for Drupal, and co-author of Using Drupal (O’Reilly, Dec. 2008), wrote a thorough review in which she said,

“…..for people who are new to Drupal this is a freaking gem. Don't think that this is only for newbs though, not at all. This is a serious book, made for grownups, and it expects you to be able to extrapolate from examples and make use of the references you've been given. To my mind that is the only way to really learn this stuff.”

Victor Kane, author of Leveraging Drupal: Getting Your Site Done Right (Wrox, Feb. 2009), has also reviewed the book on Amazon:

I can't say enough good things about this book. It reflects the knowledge and long-time experience of two hard-working and generous professionals. If you are only going to buy two or three Drupal books, make sure this one is always handy while you are working.

David "Keyz" Newkerk:

It's the best "non uber developer" book written for Drupal.

Brian Egan:

Thank you! Front End Drupal just explained in 5 minutes what I'd been searching for over a day.

Peter McMillan:

If I was on a limited budget and needed to learn as quickly as possible, I'd start here.

Sample Javascript Files

The sample files referenced in the appendix of the first edition can be downloaded by clicking here.

Errata from the first edition

Sometimes mistakes happen. Please tell us if you find a mistake in Front End Drupal so that we can fix it for next time!

Second Printing

page 124
In the code sample the variable $region_footer should be named $footer.
page 135
$templates[] = $template_name is missing a ;

Discovered by Jeff Davidson.
page 179
The template file is listed at the bottom of the page should be views-view--All_Goblins.tpl.php, not views-view.tpl.php.

First Printing

page 50
g. eagle noticed the screen shot references the link module, but no instructions were given to install this module. Good eye!
page 208
In the last code snippet, the first line should read as follows:

if (in_array('content editor', array_values($user->roles))) {

reported by Keyz. Thanks!!
page 209
In the first code snippet, the first line should read as follows:

if (! in_array('content editor', array_values($user->roles))) {

In the first code snippet, the last line should read as follows:


reported by Keyz. Thanks!!
page 230.
the PHP function in_array() should be written as follows:

if (in_array('administrator', array_values($user->roles))) { // ...

reported by Keyz. Thanks!!

page 392-395
All quotes in the HTML source should be "straight quotes."

reported by nadavoid

About the Authors

Emma Jane Hogbin has been working as a Web developer since 1996, helping individuals and organizations to realize both their own potential and that of their online presence. She creates systems that enable her clients to succeed–her infectious enthusiasm and ability to explain concepts without using technical jargon puts even the greatest technophobes at ease. Passionate about helping people to acquire knowledge, Emma Jane volunteers with the Drupal and Ubuntu documentation teams. She is well-known in the Drupal community for not only her technical knowledge but also her engaging and humorous means of bringing Drupal to a wider audience…such as the Drupal socks and their GPLed pattern. Through her consulting company HICK Tech, and at conferences around the world, Emma Jane has inspired people to overcome fear, uncertainty, and doubt and to tackle problems head-on. She is known as “emmajane” on drupal.org and chronicles her adventures at www.emmajane.net.

Konstantin Käfer began his adventures in Web development in 1999. While still in high school, Konstantin participated in Google’s Summer of Code 2006, working on usability enhancements for the Drupal project. He has been a speaker at several DrupalCons and other Open Source conferences, and he is widely known in the Drupal community for his JavaScript skills. Konstantin is studying IT systems at the Hasso Plattner Institute Engineering in Potsdam, Germany, and he also works as a consultant for NowPublic, a large citizen journalism Web site that uses Drupal. Konstantin blogs about design, Web development, and Drupal on kkaefer.com.