Top Drupal 9 Modules You Absolutely Need For your Drupal Project
01 Feb, 2022
We get it. You want every single one of the amazing features you’ve heard about with Drupal 9. When you’re talking about features, you’re talking about modules. And picking your modules is the next thing you do after installing Drupal 9 so it’s really one of the first major decisions you’ll have to make.
Of course, it isn’t as simple as it sounds (it never is). Drupal 9 is powered by its ever-growing open-source community who work hard to develop thousands of modules that can enhance and extend the functionality of a Drupal website. Choosing between a googleplex of Drupal 9 modules can be an endeavor. Surely there’s a better way than just guessing which modules will serve your needs…? Well, no, not really. But we do have this handy list of recommended modules and best practices when choosing modules straight from our Specbee developers.
Let’s dive into a short list of top Drupal 9 modules you must have to build great digital experiences. And right after that, we’ll talk about how to pick your Drupal modules.
Admin Toolbar Module
The Drupal Admin Toolbar module is extremely useful for site admin and site builder navigation. It’s not that the default Toolbar isn’t useful, but it’s not as user friendly. This module extends the functionality of the toolbar by offering drop-down menus that allow easy access to various admin pages. It also offers a submodule to extend its functionality called Admin Toolbar Extra Tools. This submodule adds even more helpful links to the admin menu to perform tasks like flush cache, run cron and more.
If you’re hoping to stave off any complaints from your content producers, put power in the hands of content authors and editors by allowing them to create flexible and structured content easily with the Drupal 9 Paragraphs Module. They can now easily add various paragraphs field types like images, text blocks, quotes, slideshows, videos and so much more.
Using the familiar node edit form, they can add/play around with paragraph items and place them wherever they want to. It also offers widgets which will allow drag and drop functionality, duplicating paragraphs and many other features that can elevate user experience while working with the Paragraphs module.
This is one of the most essential and versatile Drupal 9 modules. So much so that it’s always on our recommended-modules-list. Almost every website needs a contact form or a survey form or a feedback form – some way for a visitor to interact. The Drupal 9 Webform Module is a rich form builder that is easily customizable and extendable. It allows you to collect form data, send it to third-party applications or send emails to admins or users. You can also export this data to spreadsheets for further analysis. And, really, we’re just scratching the surface. There’s so much more the Webform module offers that it probably deserves its own post.
Content editors and site builders can choose from a predefined set of layouts and use them to build pages easily with Layout builder. Note that you’ll need to enable this core module in Drupal 9 to use it. It has a WYSIWYG layout user interface with drag and drop functionality, making it extremely user friendly and customizable, even to novice users. Its real time preview functionality makes it a unique and powerful page building tool. You can even extend Layout builder’s functionalities easily when you integrate it with these modules.
The Drupal Devel module is a very handy tool for developers and site admins. It is widely used for testing purposes because of its ability to generate a lot of content for nodes, comments, users and various content types and entities. It also allows developers to debug any problems with node access. Page footers can be added for all pages with the help of its submodule called Webprofiler. Webprofiler gives the site admins basic analytics about the caching abilities, database queries, resource utilization and much more.
Twig Tweak Module
If you’re a developer working with complex twig templates, the Twig tweak module will be your best friend. This module provides a range of functions and filters that will not only ease, but enhance the development experience. It also helps developers write well-formatted code that’s easy to comprehend. Learn how to install and work with the twig tweak module here.
Drupal GraphQL Module
GraphQL is a modern querying language that replaces old school languages (like REST) to communicate with APIs. It’s faster and only shows the results you are looking for – as opposed to all the unwanted baggage that comes with a REST API call. The Drupal GraphQL module enables your Drupal website to create GraphQL schemas and expose Drupal entities with GraphQL client applications.
Redirect and Pathauto Module
Nobody likes broken links, especially our friends at Google (maybe not friends… more like acquaintances). If you’ve changed your URL structure or have opted not to serve that content anymore, you can avoid making the internet angry with the help of the Redirect module for Drupal 9. This super helpful module makes creating URL redirects easy.
Beyond proper redirects, having well-structured URLs not only improve the user experience, but are also vital for search engine optimization. The Drupal Pathauto module is definitely a must-have module in every Drupal project. It helps in automatically generating those SEO friendly and well-structured URLs. Site admins can also change the pattern system by changing the tokens it uses.
This is probably the most obvious, but the Drupal Google Analytics module adds Google analytics tracking system to your website. Using this Drupal module, all features of Google analytics can be accessed and integrated with your website. It allows for domain tracking, users tracking, monitoring tracked links, monitoring downloaded files, site search, Adsense support and much more.
Things to Remember while choosing your Drupal 9 modules
The upside/downside to any open source system is the amount of choice you have. Whether it’s personalization modules, social media integration modules, marketing automation modules or any other module, you can always find more than one for each functionality. Here’s what you should keep in mind before choosing which to use:
Before you download a module, you should know if it is going to be compatible with your version of Drupal. To find out what version of the module has been released in, you can go to the module’s project page on Drupal.org and scroll right to the end where you will see the download link and find the release versions specified. If it isn’t specified, go to http://drupal.org/project/Modules/name and filter by Core compatibility.
They’re free but they consume space
One thing to keep in mind is that although the contributed Drupal modules are free of cost, they are not bulk-free. Unused modules can unnecessarily consume a lot of space and resources which can make your Drupal website heavier and slower. So, before you download a module, analyze if you really need it or if any other core module you already use can perform the same functionality for your website. Don’t hesitate to abandon those hardly used and inactive modules to make your website healthier and light.
Actively Maintained Modules
It is very important to choose modules that are actively maintained, updated and published by the developers. Mostly because if you run into any security vulnerabilities or any other issues you’ll likely get a quicker response from the developer/contributor. Also, you’ll have a much better chance that an updated version will be on its way soon.
It may seem obvious, but using popular modules usually means you can trust the module to do the job securely and with less issues. In the module’s project page on Drupal.org, you can see the number of downloads and how many websites are currently using that particular module.
Look out for issues
On the right side of the Drupal module’s project page, you can find the number of issues and bugs (open and closed) associated with that module. Clicking on the link will show you a detailed report of all bugs and issues which will help give you a sense if the module will provide the functionality you’re looking for. The ‘Last Updated’ date can also give you an idea of how responsive the developers are in solving issues.