With the release of Drupal 7.0 earlier this year (January 2010), a new time has come for the Drupal Community.
Drupal is an open source PHP/SQL based content management system (CMS). As SQL database, popular engines as SQLite, MySQL and PostgreSQL can be chosen.
Since version 4 Drupal is one of the most used open source CMS platforms available.
Drupal can be compared to other popular PHP/SQL based CMS systems like Joomla, WordPress and XOOPS but has its own benefits.
You are reading my review of the book “The Definitive Guide to Drupal 7”.
The Definitive Guide to Drupal 7 was written by the following team of expert Drupal authors:
Benjamin Melançon, Jacine Luisi, Károly Négyesi, Greg Anderson, Bojhan Somers, Stéphane Corlosquet, Stefan Freudenberg, Michelle Lauer, Ed Carlevale, Florian Lorétan, Dani Nordin, Ryan Szrama, Susan Stewart, Jake Strawn, Brian Travis, Dan Hakimzadeh, Amye Scavarda, Albert Albala, Allie Micka, Robert Douglass, Robin Monks, Roy Scholten, Peter Wolanin, Kay VanValkenburgh, Greg Stout, Kasey Qynn Dolin, Mike Gifford, Claudina Sarahe, Sam Boyer, and Forest Mars, with contributions from George Cassie, Mike Ryan, Nathaniel Catchpole, and Dmitri Gaskin. The book is technically reviewed by Richard Carter, of who I reviewed a book in the past.
The book was published in August 2011 by Apress.
As a webmaster for more than 10 years – with little Drupal experience (and no Drupal 7 experience) – I will be reviewing this book for your benefit. I have to tell you that I received this book from Apress but I will try not to be influenced by this.
The book is called “most comprehensive book for getting sites done using Drupal.”. I will be checking and referring to this slogan later on.
As I`ve said before, this book is about the Drupal CMS system. It should cover every aspect of Drupal, from planning a successful project all the way up to making a living from designing Drupal sites and to contributing to the Drupal community.
The book is targeted at advanced and intermediate users who want to learn Drupal or improve their skills.
I can recommend experience with webdesign, PHP/SQL and Unix although this isn`t required – it comes in hand.
The book begins with an introduction of the authors and why you could use Drupal. After this little introduction into the world of Drupal are the biggest changes in version 7, compared to 6. After these basics comes the structure of the book, including the phases of developing a website.
Chapter one includes de basic design of a website, how –to obtain and install Drupal, enabling/disabling modules, changing the colors of the theme and other basics like setting up an slogan, adding content, roles/permission and such.
Chapter two explains two popular Drupal tools: Drush and Git (version control system) which will be used throughout the book.
Part two of the book (where is part one? Uhm chapters one and two) explains the foundations of site building.
Views – the way to display dynamic content in Drupal – is described in chapter three.
Using modules as well as recommendations for specific modules can be found in the fourth chapter.
User groups (named Organic Groups) and specific content for these groups is taught in the fifth chapter.
Chapter six guides you through the basics of security in relation to Drupal.
Updating Drupal (including the core and modules) is explained in chapter seven.
Chapter eight explains the use of several core modules, third party modules and other tricks.
The third part of the book contains chapters 9 till 14. The first chapter of this part explains where and how to find other Drupal users and interact with them.
Chapter ten is about planning and managing the development project of your website. The next Documenting for end-users and fellow developers is chapter (eleven) .
Setting up a development environment and tools are chapter twelve’s content.
Chapter thirteen is about how to deploy your site from a development to live situation. Chapter fourteen contains some ideas how to structure your ideas.
Part four is called Front-End development, you`ve only seen 25% of the book so far. As the title might suggest it contains chapters about theming or theme designing. Whereas chapter fifteen contains the basics – chapter sixteen is more advanced and is a follow-up of previous chapter.
Using jQuery (and regular Javascript) is chapter seventeen. It explains Drupal’s Javascript hooks and some examples of the bundled jQuery modules.
Part five is back-end development, yep it`s a follow-up. Chapters 18, 19 and 20 form a block and guide you through module development. Chapter 21 covers porting Drupal 6 to 7 modules. Writing project-specific codes instead of modules is described in chapter 22. Using the simpletest framework to test your plugins is explained in chapter 23. Writing a major module – like a core module – is food for chapter 24.
Advanced site building topics is part six. E-commerce using Drupal is the first chapter of this part, next chapter (26) is explaining everything that Drush has to offer. Scaling and caching including NoSQL including MongoDB is explained in this topic. Adding semantics (RDFa) to your site – which leads to improved SEO – is taught in chapter 28. Chapter 29 guides you through the menus and path. The following chapter (30) explains drupals use of hooks and functions to improve your understanding.
Chapter 31 is about improved search functionality including the Apache Solr project.
Getting into the human mind for improved user experience is taught in chapter 32.
Chapter 33 is named “completing a site” explains view mode, custom theme templates, caching and much more.
Drupal distributions (like Tattler, OpenAtrium) are explained in chapter 34. Not only how they work but also how to create your own.
Part seven is the last part of the book and is about the Drupal community. Starting with chapter 35, the story behind Drupal. Next chapter is about making a living with drupal. Chapter number 37 dives into project management , git and putting your plugin on Drupal.org
The final chapter of the book is contributing for the community.
The final hundred pages are appendixes. The first (A) teaches how to upgrade Drupal 6 to 7. Appendix B explains performance optimalisation and profiling. Appendix C describes how page rendering and altering works. Designers guide to Drupal 7 is appendix D. Accessibility enhancements and testing is appendix E. Appendix F, G and H describe the installation procedure of WAMP/LAMP/MAMP for Drupal 7. Appendix I is a follow-up of previous three appendixes and explains a virtual machine LAMP setup.
What I liked about the book is that it’s an all-in-one which means that for most people this is the only Drupal book they need.
What I disliked about the book is that sometimes I found the book a little difficult to follow, but only if you aren`t familiar with programming and/or PHP. For those who are unfamiliar with PHP … no worry, there are thousands of books which can teach you PHP programming.
What I liked about this book is that it does contain everything that it should; from installing, setup to content management, SEO and themes … you name it – it’s in there.
Is this the book of all Drupal books? I cannot tell you.
Will I get rid of all other Drupal books I got? Yes.
The book guides you through the steps of planning, installing, releasing, theming, customizing and deploying your site (and much more). This book is indeed an all-in-one.
I couldn`t find much room for improvement, since the book is big and complete already.
Did it leave you with unanswered questions?
Not that I can think of at the moment.
Is the book only text or does it contain images? Yes it contains images, everything that could be shown is shown.
I can recommend this book to anyone who has serious plans to use Drupal, but not for the faint hearted. This book is useful for anyone who wants to use Drupal as their CMS – either personal or professional.
While this book seems an overkill for most people, I am sure that every chapter has its use.
If you would like to know more about this book, you could either ask me or visit the official book site. On this page you can also buy the book, the eBook (EPUB, MOBI, PDF) and download the additional source code.
Oh yeah and it also contains a sample chapter! Take a look yourself at www.apress.com/9781430231356
If this book doesn`t seem to be the right one for you, take a look at: