Campbell’s must have modules for Drupal Site Builders


Campbell Tilley


Drupal core comes with a lot of great modules, giving you a workable site, but there are a few contributed modules that every site needs.

Admin Toolbar

Admin Toolbar intends to improve the default Drupal Toolbar (the administration menu at the top of your site) to transform it into a drop-down menu, providing a fast access to all administration pages.
The module works on the top of the default toolbar core module and is therefore a very light module and keeps all the toolbar functionalities (shortcut / media responsive).

When you first install your new Drupal site, the first modules you should install are Admin toolbar and Admin toolbar extra tools.

These modules are a must in my opinion as they greatly reduces mouse clicks and page loads. The modules allows you to much more easily navigate the administration toolbar and quickly access the page you need. Say you had to add a custom block; without admin toolbar you would click on Structure > Block layout > Custom block library > + Add custom block, each of these four clicks also involves loading a new page but with Admin toolbar you can navigate to the same page with one mouse click by hovering over Structure > Block layout > Add custom block. It might not seem like much but this module will save you a lot of time in the long run.


Admin toolbar extra tools adds a lot of extra functions to the dropdown menus. The most notable extra is the horizontal menus that are added to a lot of items in each dropdown menu. Apart from that, it also gives you a little Drupal 8 icon on the very left of the toolbar. Once you hover over this icon you can see that a lot of extra options are provided to you such as Run cron, Run updates and, my favourite, Flush all caches. Yes, it is easy to clear the caches by running drush cr in the terminal but you won’t always have the terminal running so clicking this button in the toolbar is much simpler and more accessible.



The Pathauto module automatically generates URL/path aliases for various kinds of content (nodes, taxonomy terms, users) without requiring the user to manually specify the path alias. This allows you to have URL aliases like /category/my-node-title instead of /node/123. The aliases are based upon a "pattern" system that uses tokens which the administrator can change.

Pathauto is another great time-saving module that every Drupal site should have. Pathauto essentially creates paths for your content based on the patterns you have set. For instance, the path for this article was set by creating the pattern /articles/[node:title]. So each article we create on the Lil Engine website will have the path of /articles/*the name of the article*. Becuase Pathauto works with Tokens, there is a pattern that can be created for any situation. If you sites IA requires you to have Parents of content types which need to be included in the path, you can set the parent field to be included before the title of the content. The pattern for this would look something like: /[node:field_article_parent]/[node:title].


If you don't already have this module installed and want it on your site, Pathauto gives you


Paragraphs is the new way of content creation!
It allows you — Site Builders — to make things cleaner so that you can give more editing power to your end-users.
Instead of putting all their content in one WYSIWYG body field including images and videos, end-users can now choose on-the-fly between pre-defined Paragraph Types independent from one another. Paragraph Types can be anything you want from a simple text block or image to a complex and configurable slideshow.

Gone are they days of content editors having to use WYSIWYG to work  the basic form structure constructed by Site Builders. With paragraphs, you can put power and freedom straight into the hands of editors

Essentially paragraphs allows you to create small, structured field sets that serve a purpose. Then on a content type, you can add a field that references Paragraphs and you can select which paragraphs you would like the reference field to contain. For example, on the Lil Engine site, two paragraphs we use are Page Content and Image. The page content paragraphs only contains a WYSIWYG field while the image paragraph only references the image media type. You may ask why don't you just put a WYSIWYG and an Image field on the page? That's all great if an editor wanted to enter in some content then put an image after. But what happens when the editor wants the image to be first? You could create a theme template for the page and swap the fields around there. Or you could create the two as paragraphs and the editor can then put them in any order they like, using as many of each as they like.

The above is a very basic example of how paragraphs can be used. Paragraphs are very powerful, for instance, you can nest paragraphs within paragraphs to achieve requirements of certain components. I'm not going to get into the detail of this now, keep an eye out on the articles page as I will be creating an in-depth tutorial on how to get the most out of paragraphs and the idea of reusing components.

In the frontend world, Drupal is moving more towards component driven designs and the use of styleguides. Paragraphs accompany the component mindset really nicely, as they themselves are a component on a page.


The above three paragraphs will all save you time throughout your site build. There are other modules that are import to install when starting a new build too such as Display Suite and Chosen. Again, these modules give the editor more control over content creation.

Spread the word