A Newb's Guide to Drupal Modules
Drupal websites are built with, and powered by, Drupal modules. There are two different types of Drupal modules - core, which are included with your original Drupal download, and contributed, which must be downloaded independently and added to your website. Modules are the easiest way to add new and useful features to your Drupal website without directly touching the codebase. The best part about Drupal modules?, they’re all free!
Why Are Modules Useful?
Modules are packages of code that enhance and extend the functionality of a base Drupal installation. The Drupal package is referred to as Drupal Core and it (Drupal 7) comes prepackaged with forty modules that empower a fresh installation to create multi-author blogs (Blog), have search capabilities (Search), and link content together with tags (Taxonomy). All of these core modules can be viewed in the /modules directory. This collection of core modules was vetted by the Drupal community in advance of Drupal 7’s release (January 2011) and they were determined to contain the base functionality most Drupal site administrators would need. Any functionality beyond this can be added by a developer or through contributed modules.
Where Are Modules Found?
The quickest (and most cost effective) way to extend Drupal’s functionality beyond core is to employ contributed modules. Contributed modules are packages of code created by the Drupal community and they can be downloaded and added to your website for free. Drupal’s website catalogs an exhaustive list of available modules and these bundles of code can be downloaded directly from the module’s page on drupal.org. They are available in both tar.gz and .zip format, both of which can be unpacked after adding the module to your web server.
How Do I Add Modules to My Website?
In order to add a contributed module to your website you must first upload the module to your web server and place it a specified location. Contributed modules should always be uploaded to your Drupal installation’s sites/all/modules directory, which will keep your website’s core and contributed modules from overlapping one another (this distinction is of great importance when performing Drupal core upgrades). Once your new module has been placed and unpacked on your web server it will get registered by Drupal and appear within your modules list (admin/modules). From this page your website administrator can enable the new module, set its permissions, and configure its use. Don’t forget - inside every module is a README.txt file that provides a general overview of the module’s configuration and it’s a great starting point for working with the module.
Core modules are the backbone upon which your Drupal website is built and contributed modules work in tandem with the backbone to complete your website's skeletal structure. With an understanding of what modules are and why they’re useful, as well as how to install and configure them, you’re well on your way to customizing a Drupal website to fit all of your organization’s needs.