Configuration: Drupal Modules
The core functionality of Drupal is pretty basic, which is why it is called a "framework". In its raw state, Drupal actually has very little functionality. The actual functionality of a Drupal site comes from its modules, which are PHP plug-ins that conform to a given confirmation and architecture for extending the system.
At last count there were about 10,000 modules available for Drupal, which fall into three categories:
- Core modules - which are modules that come with the basic Drupal distribution and are active at time of installation; these are the common components of any Drupal installation
- Optional core modules - which are modules that come with the distribution, but are not turned on by default, and
- Contributed modules - which are third-party modules written by members of the Drupal community, and cover virtually any conceivable function. The overwhelming majority of modules fit into this category. In many categories there are many of these contributed modules; also, some modules have dependencies on other core or contributed modules.
Finally, if you are a PHP/MySQL programmer (or hire one), you can also write your own custom modules. Most Drupal-based sites will make use of at least a few optional and contributed modules. To find modules not listed here, visit the modules list on drupal.org or use one of the third-party compilations such as Drupal Modules.
The basic modules installed in OSF are listed in the Notable Drupal Modules document, along with occasional modules and others with interesting specialty use.
Installing and Activating Modules
The Drupal Getting Started Guide has more detailed instructions on how to install modules, but here are the key steps:
- Download the zip file for the module and unzip it onto your local computer. It should unzip into its own directory, named after the module (for instance, the Views module is in directory "views").
- Upload the directory of files to your web host, creating them as a sub-directory of either
sites/all/modulesor a site-specific sub-directory such as
- To activate an installed module, or an optional core module (which you don't have to download/upload), visit the Modules administration page (path:
admin/build/modules), find your module in the list, click the Enabled check box, and click the Save Configuration button at the bottom of the screen.
- You may find that your module cannot be enabled because it depends on another module that is not yet installed or enabled. If that is the case, you'll need to follow the instructions above for the module you need, then return to the Modules administration page to activate the module you originally wanted.
Here is a partial example of what such a Modules list looks like:
As you find you need additional functionality for your site, you can find and then download and install new modules at will. You may also need to test multiple variants in a given category to find the best match. Also, you can de-activate and then delete a module at any time, so long as other active modules are not dependent upon it.