27 more Drupal modules every Drupal professional should know about

Extending Drupal with modules is a great way to create a complex website. Here are 27 of my favourite Drupal modules.
Robert Roose
By Robert Roose

27 more Drupal modules every Drupal professional should know about

After posting 50 modules every Drupal professional should know about I immediately got more suggestions and also came up with some more modules myself. In this follow-up I will share 27 more modules which might be handy for your Drupal website.

  1. Anti Spam by Cleantalk
    This module enables you to use the Cleantalk service. With Cleantalk you can fight SPAM on your Drupal website. Beware that you do need a paid account, but the service is very cheap (only 8 dollars a year) and works like a charm. More about my experience with Cleantalk.
  2. Conditional Fields
    Sometimes you want to show or hide a field based on the value of another field. An example is a list with items containing a ‘Something else…’ field. Selecting this item a text input field should appear where users can input their own value which is not provided in the list. This (and more complex conditions) is exactly what you can create with the Conditional Fields module.
  3. Comment notify
    If you have comments enabled on your website you will want to use the Comment Notify module. This module makes it possible for users to enable email notification when someone replies to their comments. Learn how to set up the Comment Notify module.
  4. EU Cookie Compliance (GDPR Compliance)
    I hate cookie pop-ups and I try to avoid needing to use one (as you can read in my privacy statement). But if you really have to then this module is the best one around with a lot of options to customize.
  5. Swift Mailer / Symfony Mailer
    Swift Mailer (soon to be Symfony Mailer) extends the basic email sending capabilities of your Drupal website. Such as enabling you to send HTML emails and include file attachments.
  6. Show Node Aliases
    If you use the Path module (which you should) then it will automatically generate paths for your nodes. It sometimes can be tricky to find out exactly what paths are being created to a node (for example if you changed the title and a new path is generated). Thanks to the Show Node Aliases module you can view all the existing Node Aliases when editing a node. You can even change or delete the aliases on the spot.
  7. Mailchimp
    Mailchimp is a very popular service with which you can send newsletters. This module enables you to create sign up forms, connect your Mailchimp audiences and you can even insert your Drupal content into a campaign.
  8. Webform Mailchimp
    If you want more control over your newsletter signup form you can use this extension of the Webform module. When installed your webforms will get an extra handler option which you can connect to a Mailchimp audience. This way you can sync the values entered in the webform with the Mailchimp list, such as an email address and name.
  9. Group
    Group is a very powerful module which lets you create different types of groups which can contain users. Nodes being shared within the group are only visible to members of that group. For example you can create different teams that can privately share documents with each other.
  10. Group Membership Request
    This extension of the Group module will enable users to request permission to join a group. Instead of a user directly joining a group when clicking on a link, their membership first need to be approved by the admin(s) of the group.
  11. Group notify
    The Group notify module makes it possible to send everyone in the group an email when new content is being shared within the group. You can enable notifications per content type.
  12. Poll
    With this module you can create multiple polls and configure if any visitor can vote or only users with a certain role. Every poll you create gets its own block which you can place in any region on your Drupal website.
  13. Views infinite scroll
    When creating a view you might only want to show an x amount of items to reduce loading time. If so you can choose to render a pagination with which users can navigate between a number of pages. Another option is to use the Views Infinite scroll module. This module will replace the pagination. Now users can scroll in the view and items automatically load when they reach the end of the page.
  14. custom 500 INTERNAL SERVER ERROR page
    Sometimes something goes horribly wrong on your Drupal website and it will show a blank page with the following sentence: “The website encountered an unexpected error. Please try again later.” With this module you can make this page a little bit more friendly by customizing it. It will enable you to change the text and style the page with extra mark-up.
  1. Image effects
    This module greatly improves the things you can do to your images within your Drupal image styles. Such as changing the brightness, contrast or opacity. You can overlay images with other images (such as a watermark) or you can blur or sharpen images. Check this readme file for all the effects that are available.
  2. Flag
    With the flag module you can create custom flags (buttons) for your nodes. For example users can flag nodes as being helpful or report spam. You can also sort nodes with views on most or least flagged. Or you can create a views block of all the nodes a particular user has flagged.
  3. Voting API
    This module is required if you want users to vote on content. The module itself does not supply a way for users to interact with your nodes, but it offers an API for other modules to build upon, such as Fivestar.
  4. Fivestar
    As mentioned above, this module let’s users rate nodes. It integrates with Views so you can create view blocks only showing nodes above or below a rating threshold. Or you can sort nodes based on rating. It also makes it possible for anonymous users to vote.
  5. Inline Entity Form
    Create, edit or remove referenced content directly from the current edit screen with this module. If you are adding a node and referencing other nodes you sometimes want to make an adjustment to the referenced node, such as correcting a title or deleting outdated content. Inline Entity Form gives you these capabilities directly in the editing form.
  6. IP Login
    This module will log you into your Drupal website automatically based on your IP address. You can even set an IP range or make use of wildcards.
  7. DraggableViews
    Sorting nodes on publication date or title is easy with views. Things become a bit more complex if you want to custom sort your nodes. The DraggableViews module helps by giving you the option to create views where you can drag and drop your sorting, just as you can do with taxonomy terms. Now you can adjust a view and sort it based on the weight assigned by the DraggableViews module.
  8. Domain Access
    With Domain Access you can create multiple domains within the same Drupal installation which can function as separate sites. More about multi sites with Drupal and Domain Access.
  9. Views Data Export
    With this module you can export any data returned by a view as a CSV, XLS, DOC, TXT or XML file. This means you can create a view, as you normally would, with your preferred filters and sorting and exporting it to a file.
  10. Automated Logout
    If you want an extra layer of security you can use this module to automatically log out users after a certain amount of time has passed since the last interaction. You can set different timeout rules for different roles. Optionally you can integrate a JavaScript timer counting down the time the user will be logged out.
  11. Entity Clone
    Entity clone lets you easily clone different entities such as nodes, content types, users or roles. Just beware that cloning paragraphs is not yet supported and can seriously mess up your site.
  12. Field Formatter Class
    After installing this module you will be able to give a field one or multiple extra custom CSS classes from the display view of the content type containing the field. Especially handy for themers to create global classes which can be reused instead of targeting every field individually with CSS.
  13. Taxonomy Access Control Lite
    This is a very powerful module if you want to control the access of your nodes based on user roles. You can create a taxonomy vocabulary and create a reference from nodes to terms within this vocabulary. Based on the term referenced to the node you can grant or deny users with a particular role to view, edit or delete these nodes.

I want to thank arek and Casiva Agustin for some of these suggestions.

If you have any suggestions of your own, please let me know by leaving a comment. Also don’t forget to subscribe to my Drupal newsletter or Drupal RSS Feed.

More Drupal blogs

The content of this field is kept private and will not be shown publicly.

Beperkte HTML

  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Lines and paragraphs break automatically.


Thank you Robert, interesting and clever list. I learn from you! :)

That's nice to hear. Thanks, arek :)