Review: Drupal 6 Ultimate Community Site Guide
Drupal 6 Ultimate Community Site Guide is an inexpensive (€5.5), 133-page ebook by Drupal enthusiast Dorien Herremans. It aims to help moderately new Drupal users bring community-oriented features to a site, via a book-length case study: the Drupal Fun site, where you'll find the book offered.
Drupal Fun's community features include basic member functionality (login, profiles), showcases, forums, shared AdSense, newsletter, user tags, user search, and content voting. It doesn't boast the shiny appearance of one of the fancier sites out there, so it's not surprise that the book doesn't delve into creation of awesome themes. Likewise, Drupal Fun's functionality comes mostly from commonly-used modules, with only a splash of manual code in blocks or elsewhere, not groundbreaking new features via heavy custom coding. But that simplicity makes the site valuable as a case study for users who want to enable those same community features despite still-modest Drupal skills.
Drupal 6 Ultimate Community Site Guide (hereafter UCSG) recognizes that Drupal's versatility is both strength and (initial) weakness; in particular, a fresh Drupal installation isn't ready-to-go with many of the community features users want. Ms Herremans describes the rationale behind the ebook:
Sure, thousands of modules offer lots of possibilities, but how about putting it all together? The first real community site I made took a few months of reading forums, trying to decide which modules to use. After finishing the site, I was so excited that I was able to find my way through the jungle of modules, that I though "I ought to write this down, in case I need it for my next site". Well, the article soon became a tutorial, and expanded into a full ebook. Its unique quality is that if offers one guide to follow for the entire site.
Chapters 1 to 3 of UCSG cover the basics of setting up and initially configuring Drupal. Readers will quickly discover an approach carried throughout the book: not a lot of space is wasted on basic topics. For example, installation and configuration basics for Drupal and modules are very brief; if Drupal's own documentation for these topics didn't help you, this text probably won't either. The overview of theme installation asks many questions (like "Does it use tables? Does it have a fixed width?"), but omits discussion of what these mean to you (though the answers will be obvious to many users). And so on.
The book's strength is in post-setup topics, including: ideas for fun things you can do with Drupal; pointers to useful tips for site developers (like the suggestion to use the Firebug and WebDeveloper Firefox add-ons, though you're on your own from there); suggestions for invaluable modules (such as DHTML menu, Captcha, Mollom, Pathauto, Poormanscron, and Tagadelic, in those first few chapters); and reminders of important admin tasks (like checking user permissions after every module install).
Plus, of course, more detailed how-tos when it's time to build community features. Things pick up from the following chapters:
Chapter 4: User Profiles
Text here will be useful for developers new to community sites, who will find good suggestions for keeping new users happy (such as keeping fields to a minimum, for quick registration). The discussion of profiles introduces readers to CCK, a key Drupal feature. That continues on to detailed user profiles, including comments a la Facebook's "My Wall" feature.
There's a nice "advanced" lesson on using Contemplate to add a big "View my profile!" button on account pages. This discussion takes reader into creation of blocks with PHP code, which may put off some beginners. But it's something a serious user needs to dip a toe into; UCGS's lesson is easy enough if you follow the text.
Chapter 5: Expanding profiles
Here you'll find even more on profiles, including personal image galleries; that carries readers into creation of new content types, use of Imagecache, and creation of a block combining Views and custom PHP. Next up is a Views page to display latest image or video galleries.
Additional tidbits include use of Gmap and Location to let each user place his location on a worldmap; use of Views to make a New Users and Featured Users block; and creation of user search functionality, using Views with exposed filters, a "find a match" block, and a user tag cloud. That's a lot of meaty stuff for a budding community site.
Chapter 6: Content Presentation
Here UCGS moves away from profiles to explore other features. Most of the chapter briefly describes what sort of features are used on Drupal Fun, or are simply possible with Drupal. There are some good specifics, such as the use of Views and code to create a Related Content block without turning to a module. Other short overviews include a look at using Panels to create custom home page; creation of tabbed blocks to save display space; and an introduction to the Voting module.
Chapter 7: Community features
UCSG gives Drupal's built-in forum functionality only a brief mention as an adequate solution needing no further explanation. The book then jumps into an exercise that'll please users dissatisfied with the simple Forums module: building a new forum using Views and Panels. It follows this with short overviews of in-site social features to strengthen community, including Sitebox; private messaging; newsletters; and user status and activity blocks. There's even a brief how-to on Organic Groups (OG), a common Drupal solution for creating sub-groups within an online community.
Chapter 8: Making an income from your site
That title should perk up the ears of some budding site creators. Chapter 8 starts with that old revenue standby, Google AdSense, with a focus on setting up one of Drupal Fun's key features: 50% AdSense revenue share with content contributors. The text follows that with brief ideas for implementing affiliate programs and tip jars.
Chapter 9: Tidying up
Here you'll find remaining tips for tasks like simplifying site navigation; modifying text strings set by Drupal; tweaking site performance; promoting the site; and making backups (via the Backup and Migrate module or via phpMyAdmin). It's a catch-all chapter for a lot of little tools that the new Drupal administrator should know.
Support for readers
Reader reaction to UCSG has been good, says its author:
From the first day, I have gotten tons of emails from readers thanking me for writing the ebook. Apparently, there was a real need for such an integrated approach in the Drupal community.
Those readers have questions, too, which the author can help with in the forums at Drupal Fun. Minor updates to content, such as noteworthy changes to modules discussed in the book, will also appear on that site.
Ms Herremans also suggests that additional site guide ebooks may be in the wings, if readers suggest what topics are of highest interest.
(Interestingly, there's another product available from the author: the complete Drupal Fun site itself, consisting of the Drupal installation, site-specific files, the database (without content), and installation guide. It's a pre-configured community site, ready for instant deployment.)
The author discusses the pricing of the book:
When I finished the book, I had to decide on a price. I could either charge €24, like the standard Drupal ebooks, but I chose to put it out there for the extremely cheap price of €5.5. Why? Because, my goal is to help as many people as I possibly can.
A disclaimer: UCSG offers an affiliate program for sites that link to information on the book. This review's links make use of an affiliate ID, so your purchase will make a small (but much-appreciated) contribution to hosting costs. I chose to join the affiliate program only after reading the book and deciding that it's a good guide for community site builders.
The first question potential readers are likely to have is "Is this a book for beginners?" Not quite, I'd say, for the complete beginner with no technical ability or exposure to Drupal. UCGS is not detailed enough to act as a rank beginner's My First Drupal book; such a newbie should poke around beginner documentation and (more importantly) a test site or two first.
As I note in "Think you can admin a Drupal site?", you need a minimal level of technical self-sufficiency to work with Drupal, and thus with UCSG – though as with much "technical expertise", that mainly means comfort with configuration, ability to follow directions, and willingness to experiment or research on your own as needed. The latter is important for readers of UCSG, which offers a lot of beginner-friendly pointers and overviews but doesn't try to hold the reader's hand through every step.
For beginners who've gained a smidgen of Drupal familiarity, or more experienced users who are still new to community features, UCGS will prove a useful cookbook. Although the book's shorter recipes don't go far beyond "season to taste", its more detailed recipes are sure to be a big help in whipping up that full-course online community. Bon appetit.