Back in February I wrote about Five nifty Drupal modules we use, and I thought it was time to add to the list of the ones we have found very useful.  Please note that the availability of these modules may vary across the different versions of Drupal (5, 6, and 7), and in some cases module features and functionality differ some as well based upon Drupal version.

1. Boost

We have found that Drupal’s out of the box caching functionality is very helpful in improving the performance of our sites.  However, there are very few ways to configure the caching.  That’s why we like Boost; it allows us to configure caching more.  For instance, the module allows us to disable caching on specific pages while leaving it enabled on the rest of the site.  In regards to Drupal 6, it also has a much more efficient cache due to the fact that it is a file-based cache instead of the database based cache built in to Drupal.

2. ThemeKey

A theme is a basic design template for a Drupal site.  Drupal sites can have multiple themes.  In some cases we use one theme for the main version of a site while we use another theme for the mobile site.  However, there are times when a section of a site needs a different theme – regardless if it is viewed using a mobile device or not.  We recently implemented a blog section of a client’s site, and we used ThemeKey for that purpose.  There are many rules you can set up to govern which pages use which theme, and in this case we based upon the node’s alias.

3. Colorbox

On many of our sites we use pop-ups for splash pages, social share options, image and video embeds, and other similar content.  The Colorbox module provides such functionality and is very helpful when setting up pop-ups.  While this is not a surprise, it is nice that one can use css to modify an pop-up’s appearance.

4. Features

We are constantly tweaking and adding functionality to many of our Drupal sites.  Before we implement major changes, we’ll get them set up and approved by our clients first on our development sites before pushing them into our production environments.  Pushing new and reconfigured content types, modules, blocks, and similar features from a development to production environment is tricky at times since the environments are rarely truly synced.  Further, in some cases this requires that one remembers a multitude of changes to settings. The Features module provides mechanisms that aid in this process by allowing users to export new features from a development site as a module for installation in another environment.

5. Google Analytics

I’m not a big fan using modules for simple things like adding Google Analytics tracking script to sites.  That’s simple enough to do.  However, sometimes once you look closer, modules like this have a lot more to them.  For instance, this module allows you to control when the tracking script appears on the site.  One common thing to do is to not display the script for admin users.  Why would you want to track what you or your staff is doing on the site when what’s important are the actual site visitors?  This module allows you to control that.  Another cool feature is it allows one to add custom variables for custom reporting purposes using a very easy interface.  Thus, one doesn’t need to understand how to modify the script properly execute these changes.