confused - Mobiloitte Blog

So Many Drupal Modules. How to Choose The Best Ones?

Drupal modules are great. They make Drupal an excellent platform to build on; however they make Drupal hair-ripping to many people who are just discovering it. There is no exact science to choosing the right Drupal module for a given project. However the more sites you build, the more you’ll begin to notice that specific modules become common for a given project.  I have already mentioned some of the finest Drupal modules we have worked with. Now it is time to upgrade that list and to share few insights on choosing the best among the plethora of Drupal development modules currently available on Drupal.org.

So many Drupal Modules. How can I choose?

It is true. There are currently over 17.000 Drupal modules developed and maintained by a community of over 400.000 Drupal enthusiasts which keeps growing. Nevertheless you can rely on few simple principles when choosing modules for your next project:

  • If possible, keep as less active Drupal modules as possible

Keep in mind that every module you enable on a Drupal website adds code and other things a website has to deal with in order to load the site. More things to deal with, the longer it takes for pages to load.

  • Look for Drupal modules that are actively maintained

Each Drupal module’s project page lists whether it is actually maintained, how long ago the code was updated and the date of the last release. In general it is best to choose modules that are listed as “Actively Maintained” and have a recommended release date within the last 6 months. Here is a good example:

drupal modules - universal referenceFigure 1. The Drupal project page for Universal references module. Notice that the last commit happened just 1 month ago 
  • When everything else fails, reach out.

Of you can’t figure out what are you looking for or can’t find the right Drupal module, a good Drupal Developercan often help you create custom functionality (at a very nominal price). You can find advice and support from the Drupal community just by asking at a community event or online. Our team of Drupal developers has already delivered over 150+ Drupal websites and back-end systems and chances are that we have already build a functionality alike the one you need. We provide free consulting for the regular readers of our blog which can be accessed here.

We have already spoken about the Top 10 Drupal modules to start your project with. This time we shall extend the topic even more by including “modules you might need for something” or “nice to have modules” Bookmark this page and keep the following modules as reference. We ensure you that you will need some of them soon.

Field Group

This module gives you the ability to create groups or fields within Drupal. For example, let’s say that you are creating an address book, and you want to separate the mailing address from the email/phone contact information. Using Field Group, you could display both sets of information in multiple groups and theme them differently within your site. Field Group can be displayed as Vertical Tabs or Horizontal Tabs by configuring the Manage Display feature in your content type . This is very useful for handling complex content types which have lots of fields.

Link

Link helps you create a Drupal field formatted as a link

Media

Media helps you organize and store media (like audio and video) on a Drupal website. As of this writing, implementation is still a bit buggy, however Media remains useful module to have especially if you want to host video or documents on your site. Here is a website from our portfolio which demonstrates what Media can do

References

References gives you the ability to format Drupal fields as references to other content such as nodes, user profiles, or taxonomy terms. This is useful if you want to show the author of a post, or related content of an article.

View reference

The References module as you saw above,  made it viable to reference a specific node or user within a field of a Drupal website – which is useful if you have related information to share after a blog post. But what if you want to show more related content, with some teaser information and image? You could use Node reference, and format the display of the field to show the content’s Teaser display rather than just titles. However, doing this causes Drupal to create extra code that will slow down your website. That is the last thing you want.

Using View Reference can make you create a view that contains only the field you want to display, formatted the way you want to show them and reference that View directly in a custom field.

Block Reference

Normally, to place a block on a page, you would use the Block configuration screen to place it inside a region and configure which pages or content types it belonged to. Block Reference while it doesn’t replace this process, gives you the ability to reference Drupal block directly in a field. This is useful:

  • When you want to place a block only on one page
  • When you want to place a block within the Content region in a particular location (say, within a field group, or underneath a description).

Block Reference doesn’t replace the Block configuration screen for all blocks; menus, for example still works best when you use the Block configuration screen to place them. But or highly specific blocks that need to show up within a node’s content, this is an incredibly useful module.

Submitagain

Submitagain is a deceptively simple but very useful module. What it does is allows you to create a setting when you are creating a content type  – through a simple checkbox  on the content type edit form-that which will give you an option to “Save & Add Another”  when you create a piece of that type of content.

HIRE DRUPAL DEVELOPERS Why is this so great? Let’s say you are doing an online directory of association members  for your local trade group. You likely have a list of people with name, address, and other contact information to enter into your Drupal website. Typically, you would have to choose Add Content > Member (assuming you are working with a content type called “Member”). With this module you would be able to add a member click “Save and Add Another”, enter another member, and so on. This is a major time saver for clients who are using Drupal to manage a lot of online content.

.. And A BONUS

The modules that follows below are unlikely to be needed but are particularly useful for adding a bit of swag to you Drupal sites:

Views Slideshow

Views Slideshow allows you to create customized JQuery slideshows using Views data. This is useful when you want to create a banner of featured content on a site landing page for example; or if you want to show a list of featured projects on your home page. For real time overview of how this looks like, click here

Colorbox

Colorbox is a module that allows you to display images using JQuery overlays. Have a look

User Points

User Points is a helper module that allows you to set up your site to give users “points” for doing things on your Drupal website. This is useful for community websites where you want to encourage users to engage with the site in some way. The User Points page lists a number of additional modules  which the community has created with the help of the User Points module. Worth having a look if you intend to build community oriented website.

Listing all the modules in a single blog post is a Mission Impossible. These are just part of them with which we have worked and served various need for our client’s projects. Tested and proven by our team, you can try them on today.

Best,

Mobiloitte