35 Drupal Modules That You Absolutely Need

If you are just starting out with Drupal, then the module repository will be a little overwhelming, with literally thousands of modules to choose from. That is why I have created this list of vital modules, to help you. A big part of these modules will be needed on all the Drupal websites that you will create, while some are more targeted (e-commerce for example). I have divided the modules into the following categories: content, images, SEO, utils, social, newsletters, e-commerce and extras. Every link will open up in a new window and take you to the module’s page. I have included information about each module, and if interested you will find everything you need on its page. Ready? Here we go!

Content

1. CCK (Content Construction Kit)

This is so good that it will go into Drupal 7 Core. It basically allows you to add custom fields to node types.

2. Views

I cannot imagine a Drupal installation without Views. This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results. You will need Views if:

  • You like the default front page view, but you find you want to sort it differently.
  • You want a way to display a block with the 5 most recent posts of some particular type.
  • You want to create a photo gallery.

3. FileField

FileField provides a universal file upload field for CCK. It is a robust alternative to core’s Upload module and an absolute must for users uploading a large number of files. Great for managing video and audio files for podcasts on your own site.

4. ImageField

ImageField provides an image upload field for CCK. It boasts features such as multiple images per node, resolution restrictions, default images, and extensive Views support. You will definitely need this if you plan on having Image-type nodes.

5. WYSIWYG

It might be ok for you to write code in the node body, but for your client it’s not. That’s why you use WYSIWYG editors such as TinyMCE or FCKEditor. This module makes integration with such editors a breeze, and no other module is required. You can even assign a different editor for each input format!

6. Dynamic Display Block

Need a big showcase of your recent work on your homepage? Or maybe just a slideshow that highlights the most important aspects of your site? Then this module is for you. It simply creates an attractive block that cycles through certain nodes. Use it in conjunction with Views for best results.

Images

7. ImageCache

ImageCache allows you to setup presets for image processing. These presets will scale, crop, rotate and do about anything that you would need to your images. It will then save the new images in designated folders for later use.

8. ImageAPI

This provides an API other modules can leverage. Currently GD2 and ImageMagick support are distributed with ImageAPI. Basically you will need this for ImageCache to work, so just install it :)

9. Lightbox2

Everybody should know what this is, but just in case: It is a simple, unobtrusive script used to overlay images on the current page. It’s a snap to set-up and works on most modern browsers. This translates into: when people click on your image thumbnails, instead of being taken to the image node, the screen goes dark and the image pops up at full size. You can cycle through images, make slideshows, and it works great with ImageCache by using the presets defined there.

10. IMCE

IMCE is an image/file uploader and browser that supports personal directories and quota. You will need this is you plan on uploading and managing images directly from your WYSIWYG editor, and you will also need…

11. IMCE WYSIWYG Bridge

This module acts as a bridge between the IMCE module and the WYSIWYG module.

SEO

12. Pathauto

This is highly recommended as it creates nice URLs automatically for you, whenever you create new content. It does that based on several things like title, taxonomy, content type, and username. To be honest this will work out-of-the-box, but in case you want a more granular control over the URL structure you can easily change that in the module’s settings. You can find an in-depth tutorial on this module here: Drupal 6 Tutorial – SEO For URLs

13. Nodewords

This project allows you to set the meta tags for each Drupal node. Description, Keywords, Copyright, etc. with really detailed settings and great control, definitely a must-have. You can find an in-depth tutorial on this module here: Drupal 6 Tutorial – SEO With Meta Tags

14. XML Sitemap

The XML sitemap module creates a sitemap that conforms to the sitemaps.org specification. This helps search engines crawl your website better and keep their results up to date. The sitemap created by the module can be automatically submitted to Ask, Google, Bing, and Yahoo! search engines.

15. Global Redirect

This module addresses one important SEO issue: canonicalization of your URLs. What that means is that it makes sure that for each piece of content you have, there is one URL and one URL only. These are some of the things it does:

  • Removes trailing slashes from URLs (“/”)
  • Permanently redirects any requests for content using the non-clean URL format
  • Permanently redirects any requests that refer to the homepage, but use something other than the canonical URL for the homepage address.
  • Permanently redirects any requests for content where the case of the requested URL does not match the case of the canonical URL.

You can find an in-depth tutorial on this module here: Drupal 6 Tutorial – SEO For URLs

16. Page Title

This is pretty straightforward but overly underestimated. It gives you granular control over the page title. You can specify patterns for how the title should be structured and, on content creation pages, specify the page title separately to the content’s title. You can find an in-depth tutorial on this module here: Drupal 6 Tutorial – SEO With Page Titles.

17. Google Analytics

Adds the Google Analytics web statistics tracking system to your website, and much more:

  • Selectively track certain users, roles and pages
  • Monitor what type of links are tracked (downloads, outgoing and mailto)
  • Monitor what files are downloaded from your pages
  • Cache the Google Analytics code on your local server for improved page loading times

Utils

18. Token

Tokens are small bits of text that can be placed into larger documents via simple placeholders, like %site-name or [user]. The Token module provides a central API for modules to use these tokens, and expose their own token values. Many other modules rely on these variables, so you will definitely want this on a fresh install.

19. Administration Menu

Let’s face it, the Drupal back-end theme is not that great. And for your clients, it will seem extremely complicated. Have no fear! Administration Menu is here to save face. What it does is that it places a small horizontal menu on the top of your page, that has everything that you need and more, organized in a clean and clever way.

20. JQuery Update

This module facilitates an upgrade of jQuery in Drupal core and allows other modules to rely on a newer jQuery version (i.e. Dynamic Display Block).

21. Captcha

We all hate spam. But unless we do something about it, just hating it won’t get us through the day. Captcha is that something. This module allows users to provide a captcha in a number of places on your site such as comments, nodes and other commonly used forms. It will show the user an image with random text to input or a question that they must answer in order to submit the form.

Social

22. AddThis Button

This provides an addthis.com button to let your users share your content to social network sites. This simple yet powerful button is very easy to install and provides valuable analytics about the bookmarking and sharing activity of your users.

23. Twitter

Twitter is getting bigger and bigger. Many sites have started incorporating twitter into their designs even if they aren’t blogs. In fact, it could add a lot of momentum to a static website because it gives the impression of constant updates and maintenance. Out of the box, it allow users to:

  • Associate one or more Twitter accounts with their Drupal user account.
  • Have their tweets displayed in a sidebar block or on their user profile.
  • Post to their own Twitter account or a site-wide Twitter account whenever they create new content.

Newsletters

24. Simplenews

Simplenews publishes and sends newsletters to lists of subscribers. Both anonymous and authenticated users can opt-in to different mailing lists. HTML email can be sent by adding Mime Mail module.

25. Mime Mail

This allows other modules to send HTML emails. ‘Nuff Said!

E-Commerce

26. Ubercart

The leading e-commerce solution for Drupal. Get it. Use it. Love it. It’s a great solution for stores that sell physical goods, digital product downloads, and site memberships.

27. Secure Pages

If you have an on-line shop, then you know how important security is. Especially for your customers. This module simply redirects the required pages to a SSL version (like checkout, user details, orders, etc.) 28. Ubercart Addresses This  module adds support for one or more addresses in the user’s profile. When users register, you can require that they provide an address. Users can then add more addresses and edit or delete existing ones. This really speeds up the checkout process for registered users.

29. Ubercart Discount Coupons

This module allows Ubercart store owners to provide discount coupons for use during checkout. Coupons can discount either a fixed price or a percentage of the order total. You have a vast amount of settings to fine-tune this to your liking.

30. Terms of Use

This module adds a Terms of Use node and an “I agree” check box to the registration page. Being a node, you can easily link to it anywhere inside your website.

Extras

31. LoginTobbogan

LoginTobaggan is a great module that provides some very useful user features. With this module you can allow your users to login to your site with their email address or their username. You can also allow for various other options like allowing people to sign in automatically or choose their password instantly while signing up. Another very handy module.

32. Webform

This module adds a webform nodetype to your Drupal site. Typical uses for Webform are questionnaires, contact or request/register forms, surveys or polls. Webform includes some simple statistical tools to help in form design and evaluation and also allows the whole table to be downloaded as a csv file for detailed statistical analysis.

33. Date

The date module is a flexible date/time field type for CCK. You will need it for…

34. Calendar

This module will display any Views date field in calendar formats, including CCK date fields. Switch between year, month, and day views. Back and next navigation is provided for all views.

35. Site Map

Do you need a sitemap? No, not an xml sitemap. Just a plain old sitemap! This module provides a site map that gives visitors an overview of your site (basically a nice list with links to all your content). It can also display the RSS feeds for all blogs and categories.

Phew, man that was a long list.

I hope that this will help you unlock Drupal’s true potential. At least it will get you started. If you have any modules that you would like featured here, just tell me a name and give a short description, and you might get lucky.

Alex Petrisor - Founder and maintainer of Padizine.com. He is currently studying creative advertising at Bucks New Univeristy, but he also takes freelance jobs as a graphic designer / web developer whenever he gets the chance. Learn more about him here.

4 Comments


  1. Rick Vugteveen
    Feb 17, 2010

    Good list. Certainly one of the best ones that I’ve seen. I’d try make some room to get Features and Ctools onto the list. I’d also consider switching out Dynamic Display Block for Views Cycle. It is very hard to keep up with all of the contrib goodness coming out these days!


    • Alex
      Feb 17, 2010

      Thank you for your feedback, I will definitely be looking at your suggestions.

      Boy I can’t wait for Drupal 7 :)


  2. colin brakewell
    Mar 04, 2010

    Food for thought. I am grateful to you for that, but I also want to thank for something else. I am afflicted with color blindness (protanopia in my case). I mainly use Chrome browser (unsure if that changes anything), and a considerabland a number of websites are hard to comprehend on account of a problematic choice of colors employed ithe design. On your site, as the range of colors is reasonable, the site is quite clear and straightforward to understand. I am not certain if it was a intentional and conscious deed, or just the ‘luck of the draw’, but just the same, thanks.


    • Alex Petrisor
      Mar 04, 2010

      Thanks for the comment. The site is mainly grayscale, so that probably helps a lot as grey is not a colour :) And regarding the Chrome browser, it probably doesn’t do anything for you, but keep using it, it’s really good.

Leave a Reply