Channels ▼

Mike Riley

Dr. Dobb's Bloggers

Drupal's Building Blocks Book Review

February 09, 2011

Like the Apache project, Drupal is one of the shining beacons of a successful open source project that has captured significant developer and designer mindshare in the web content management system space. As its user base expands beyond its CMS origins, more modules offer even greater variety and capabilities for developers. Drupal's Building Blocks examines "The Big Three" modules and shows readers how to fully take advantage of them. Read on for the full review.As stated in the book's subtitle, the primary focus is about learning and leveraging Drupal's "Big Three" contributed modules: the Content Construction Kit (CCK), the Views query builder and the Panels layout and theming add-in. As such, the book is divided into three parts that focus on each of these modules. The authors assume the reader is already quite familiar with Drupal's capabilities and is comfortable constructing standard Drupal websites. This is not a Drupal tutorial book, but rather a technically-oriented discussion around one of the more popular means of customizing and extending Drupal's functionality and UI design.

Part 1 delves into Drupal's Content Construction Kit (CCK), giving developers the ability to add custom fields from a variety of types. Readers learn how to use the CCK via a homebrewer's journal and T-shirt sale example websites. CCK capabilities can be extended with custom field, widget and formatters via PHP code and the CCK API.

Part 2 covers the Views module and is the most detailed, no doubt due to the fact that co-author Earl Miles is also the creator of the module. This section offers a detailed look at this easy to use query builder tool. Connecting to either MySQL or PostgreSQL back-ends, Views helps designers and developers store/retrieve and present the data site users interact with. Using the Views Bonus Pack, various additional features such as CSV, DOC and XML export and audio playlists can be added to further enhance Drupal's functionality (note that this bonus pack is not yet available for Drupal 7). Theming of views and a deeper analysis of the data architecture underlying Views is also covered in this section of the book.

Part 3 on Panels consists of six chapters ranging from a basic introduction and administrative control, to exploring the Panels UI, content connections across panels and theming. The final chapter of the book summarizes some of the basic source control management and deployment issues associated with Drupal modules such as those covered in the book. There are also three appendixes: one surveying other useful Drupal Views, CCK modules and Panels modules, one on reporting bugs to the Drupal team and a summary of the Views API handlers and plugins. Sample code from each chapter is available from the website.

The main criticism that I have with the book is typical of many technology titles - it has already dated itself. Now that Drupal 7 is released, it would have been helpful to at least have an appendix touching on any updates or changes that could affect the operation of these building blocks within the new release. One of the frustrating aspects I have found with my own Drupal experiences is its dramatic back-end changes from version to version, making the likelihood of custom code breaks a high probability with each upgrade. I haven't spent enough time with Drupal 7 to determine if this issue is still a major concern, but it would have been reassuring to know that everything discussed in the book is fully applicable in 7 as it is in the prior release that the book was written for.

Overall, Drupal Building Blocks is a title best appreciated by those who either support or make a living constructing Drupal-based websites and would like to take Drupal's out of the box generic templates to their next, highly customized level. The examples are clearly described and easy to follow, and the authors do a good job of instilling their excitement for these modules to the reader.

Title: Drupal's Building Blocks: Quickly Building Web Sites with CCK, Views and Panels Authors: Earl Miles and Lynette Miles, with Emma Jane Hogbin and Karen Stevenson Publisher: Addison-Wesley ISBN: 978-0-321-59131-9 Pages: 384 Price: $35.99 (Ebook), $44.99 (Print)

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.