Contributed Modules for Drupal 6

I began running this website on Drupal 6 shortly after the official release.  Before then, I periodically installed development versions of Drupal 6 on the production server during the weekends so others could judge the progress that was being made.  During this period, I made the claim that I didn't really need any contributed modules to run my site on Drupal 6.

As I said last week, it's amazing how many people overlook the power of Drupal...even without its contributed modules. Yes, I'll be glad when the Views, Panels, and even the TinyMCE contributed modules are ready to use with Drupal 6. But I've always looked at contributed modules as modules of convenience and not necessity.

It could have been a bold statement that I made at the beginning of the year.  Although Drupal 6 interest has finally overtaken Drupal 5, there still are a number of popular modules still under the designation of release candidate, beta, and even alpha.  My site has shown that you don't have to always wait for contributed modules to upgrade a site to the latest version of Drupal.  However, my statement was a lie. By the time Earl Miles released Views 2.0 Beta 1, I found I didn't want to live without my essential modules for very long.

The following are a list of contributed Drupal modules that I wouldn't want to do without here at CMSReport.com.  I am neither the first word nor the last word of which modules you should be running for your Drupal site.  In fact, by coincidence, Kathleen Murtagh has just written a similar list of contributed modules that should be considered.  Some of the modules on my list are still going through their development phase and you'll have to assess the risk of using the modules on your own sites.  Personally, I like to take the risk for my hobby sites such as these, but I am more cautious when using development code for sites managed at my day job.  Whichever modules you choose, be sure to thank the developers that have made your site possible. 

Contributed modules used at CMSReport.com

Project Lead: Greg Gnaddison
 
There are a number of comment and subscription related modules for Drupal.  However, I found this module to be very convenient for both users and administrators.

Sends e-mail to notify both registered and anonymous users about new comments on pages where they have commented. The goal is to drive one-time users that comment back to you site to convert them to real registered users. This conversion step is an essential one in building a blog comment community.

FeedAPI 6.x-1.x-dev (2008-Sep-18)
Project Lead: Aron Novak
 
Although 6.x-1.3 is the latest version of FeedAPI, trying to figure out some performance issues led me to the development version.  For reasons unknown to me, I'm having some issues running Drupal under FastCGI that looks to be more of a system administration issue and not a Drupal issue.
 
Until a month ago, I had been using the Drupal 6's built-in Aggregator module, but lately I've found that I need more of the versatility that the FeedAPI module hopes to offer.  The FeedAPI is new to me, but I have already made some slight modifications to the module to meet my own personal site needs.
FeedAPI aggregates feeds on a Drupal website by generating light weight items or nodes from feeds. It provides a straightforward configuration for most use cases and is extensible through an API. FeedAPI integrates with OG (but does not require it).
Image 6.x-1.0-alpha3
Project Lead: James Walker
 
I think until something comes better along, most Drupal users will continue to find the Image module very important in their arsenal of contributed modules.  There of course are other choices for displaying images, but until there is better consensus in the direction Drupal users should take, I'm sticking with the Image module.

This module allows users with proper permissions to upload images into Drupal. Thumbnails and additional sizes are created automatically.

Images could be posted individually to the front page, included in stories or grouped in galleries.

Mollom 6.x-1.5
 
Comment spam and content spam is a real problem for Web 2.0 sites.  I was fortunate enough to be asked to test Mollom by Dries before information about the project went public.  Since installing Mollom, I've been able to sleep at night knowing that Mollom is watching my back.
 
Before Mollom, I was using together the Akismet module and the CAPTCHA module.  At one time, I even called Akismet a must have module for Drupal sites.  While Akismet provides good service, I've had better luck with Mollom in keeping the spammers out of my site.  My only surprise with Mollom is that the developers took as long as they did with taking the product out of beta into an official commercial product.  It just goes to show you how serious Dries and Benjamin are to providing a near-perfect service to their customers.

Mollom helps you stop comment spam, contact form spam, forum spam, fake user accounts, etc. To do so, Mollom combines context analysis and accessible CAPTCHAs to optimize your site's accessibility and experience.

The web is changing. User contribution is now what makes or breaks a site. Allowing users to react, participate and contribute while still keeping your site under control can be a huge challenge. Mollom is a web service that helps you identify content quality and, more importantly, website spam. When moderation becomes easier, you have more time and energy to interact with your web community.

Path Redirect 6.x-1.x-dev (2008-May-31)
Project Lead: Jeff Robbins
 
With this module, there simply is no reason to being lazy and redirecting search engines and your users to the proper URL in the correct manner.

This module allows you to specify a redirect from one path to another path or external URL, using any HTTP redirect status.

Pathauto version 2.0 and later can be configured to automatically generate path redirects to ensure that URL alias changes do not break existing links.

Pathauto 6.x-2.x-dev (2008-Sep-13)
Project Lead: Greg Gnaddison
 
While I've used Pathauto for some other Drupal sites, I really didn't start using this module until I began using using the FeedAPI.  With feed items now saved as nodes, I wanted (and still want to) organize the path to my links to disallow search engines from indexing content I aggregate.  Since the content in the feeds doesn't originate with me, I don't want to benefit more than I should with the search engines.
 
Speaking of search engines, there is some thought that Pathauto will help in your rank with search engines.  The theory is that your page will rank higher if you have placed keywords in your URL as opposed to node/6403.  I have always doubted this claim, but I suppose using Pathauto can't hurt in the SEO department.
The Pathauto module automatically generates path aliases for various kinds of content (nodes, categories, users) without requiring the user to manually specify the path alias. This allows you to get aliases like /category/my-node-title.html instead of /node/123. The aliases are based upon a "pattern" system which the administrator can control.
Taxonomy Manager 6.x-1.0-beta2
Project Lead: Matthias Hutterer
 
If you allow visitors of your site to categorize content via "free tagging" then the Taxonomy Manager is a must.  Taxonomy Manager allows you to delete, move, and merge terms with much easier workflow than what the core provide.  Taxonomy Manager eases the pain in managing your terms.
This module provides an powerful interface for managing a taxonomy vocabulary. A vocabulary gets displayed in a dynamic tree view, where parent terms can be expanded to list their nested child terms or can be collapsed. 
Views 6.x-2.0-rc3
Project Lead: Earl Miles
 
I've used Views 2 at CMSReport.com since ever since Beta 1 was released back in April.  Views is easy to use, but I think the concept can be difficult to grasp.  I view Views as something that contains not only an advanced search of your site's content but also allows you to display in a format of your choosing in a block, page, or feed.  Just start playing with it and you'll eventually find out what Views is all about and why so many people recommend this module.
 
If you want to customize your site but want an easier way than digging into PHP, Views (and from what I hear CCK) is the route you want to take.

The views module provides a flexible method for Drupal site designers to control how lists of content (nodes in Views 1, almost anything in Views 2) are presented. Traditionally, Drupal has hard-coded most of this, particularly in how taxonomy and tracker lists are formatted.

This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results. It has four modes, plus a special mode, and provides an impressive amount of functionality from these modes.

Wysiwyg API 6.x-0.3
Project Lead: Daniel Kudwien
 
I learned HTML before there was a 2, 3, or 4 after HTML.  Nevertheless, I like my rich text editors (RTE) and have a history of being frustrated with Web applications that don't provide WYSIWYG in the core.  On the other side of the coin, there are Drupal developers and users that for valid reasons prefer not to see a specific RTE to be chosen as part of the core.
 
It doesn't help that differing modules such as the TinyMCE module or the FCKEditor module behave differently enough that you don't always get the intended results no matter what Input filter you decide to use.  The Wysiwyg API module is the attempt to allow a RTE editor of your choosing to interface with Drupal in a standard and consistent way.
 
I stopped using TinyTinyMCE a couple weeks ago and have started using Wysiwyg API.  Although Wysiwyg API may still be heavily under development, I felt it is a module worth supporting by using it.  To my surprise, it has less bugs than some of the completed RTE modules available at Drupal.org.
 

The Wysiwyg project is a central development space for multiple efforts, which have the following goals:

Overall goal: Abstract the configuration and integration for any client-side editor in one module, and allow Drupal modules to interact with any client-side editor.

 
XML Sitemap 6.x-0.x-dev (2008-Jun-09)
Project Lead: Darren Oh
 
The use of XML Sitemaps is a chance for ending all the silly search engine optimization games some of us play.  Instead of waiting for the search engines to come to you, the Sitemaps format is an easy way for you to inform search engines about pages on your sites that are available for crawling. 

XML Sitemap automatically creates a site map that conforms to the sitemaps.org specification. This helps search engines keep their search results up to date. XML Sitemap replaces the Google Sitemap module written by Matthew Loar as part of Google Summer of Code 2005. Please check there for older versions.