17,548 Modules match your search

Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.


HTPasswd window with Shield module


PHP Authentication shield. It creates a simple shield for the site with Apache authentication. It hides the sites, if the user does not know a simple username/password. It handles Drupal as a "walled garden".
This module helps you to protect your (dev) site with HTTP authentication.


If you don't need the authentication just live blank the user field.

  1. enable the module
  2. go to the admin interface (admin/config/system/shield) and fill the form
  3. nothing else :)

On plain old CGI

Since Drupal 7.23 you don't need any .htaccess modification for CGI (#670454: Support HTTP Authorization in CGI environment) but if you use plain old CGI you still need a modification:
Modify .htaccess, inside <IfModule mod_rewrite.c>. Add the following line at the beginning of the section:

  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]


Footer Message

This module replicates the "Site Footer" feature from Drupal 6.x for Drupal 7.x websites.


Open Atrium Media

This module contains Media improvements for Open Atrium 2.

Submit an Issue or See issue queue


CAS Attributes


This module provides a token replacement for user and profile fields when a CAS user logs in. The module is compatible with the user name, e-mail address, and all user fields of type text. The Drupal 7 version can also assign roles.


User points Nodes and Comments

User points Nodes and Comments utilizes the Userpoints Core module to grant points to a user when they post a node or a comment and/or moderate a comment.

What it does (features)

A configurable number of points can be awarded for the following actions

  • User creates a new node
  • User posts a new comment
  • User moderates a comment

Other Features


Location Feeds

This module provides location mappers for the Feeds module and is compatible with both CCK and location module location fields.

Degrees, minutes, seconds notation is supported for latitude and longitude sources provided the values are numeric.

Simple GeoRSS support is available for georss:points (http://georss.org/simple)


Permission Select


Permission Select is a module that allows for quicker editing of role permissions on /admin/user/permissions.

The module utilizes jQuery to manipulate the DOM, creating links to check all / uncheck all on each set of permissions for each module. This allows for quicker manipulation of permissions for standard users.


Path redirect import

Import redirects from CSV

This module allows to include path redirection in a simple way. Provides a simple way to bulk import redirects for Redirect (Drupal 7) or Path Redirect (Drupal 6) modules from a CSV file.

All the necessary redirections can be done at the same time from a CSV file.
Very useful module for moving your website from one path structure to another.

Drupal 6

CSV structure:
'old url', 'new_url', 'redirect_code' = 301



Provides integration with Libraries API (2.x) and a Drush Make script to download the AWS SDK for PHP (github) (support forum).

The AWS SDK for PHP provides a library, code samples, and documentation for developers to build PHP applications that tap into the cost-effective, scalable, and reliable AWS cloud.

With the AWS SDK for PHP, developers get started in minutes using AWS infrastructure services, including Amazon Simple Storage Service (Amazon S3), Amazon Elastic Compute Cloud (Amazon EC2), Amazon SimpleDB, and more.


The AWSSDK can be configured by using Drupal variables with the same names as the constants found in config-sample.inc.php. For example, the following can be placed in a site's settings.php file or configured through the awssdk_ui module.

['aws_key'] = '...';
$conf['aws_secret'] = '...';
$conf['aws_account_id'] = '...';
$conf['aws_canonical_id'] = '...';



Disable Term Node Listings


By default, on taxonomy term pages, Drupal will display a list of nodes (teaser build mode) that are tagged with that term. Disable Term Node Listing allows you to selectively disable node listings on taxonomy term pages by vocabulary. Once the listing is disabled, view blocks or views embedded using EVA: Entity Views Attachment can be used instead.


Open Atrium Contextual Tabs

This module contains contextual tabs customizations for Open Atrium 2.

Submit an Issue or See issue queue


Administration Menu Source

Administration Menu Source

Use a different menu as the Administration Menu. Configurable per role.

See a video tutorial by CodeKarate.


OG Menu Single

Instead or providing multiple menus per organic group as OG menu does, OG menu single provides a single menu -- for the entire site -- that each group has it's own section in this menu. Menu items can be added via node form like normal menu links, but only the group's section of menu will appear as option (do not enable the group menu under content type settings; it will appear automatically). A panel pane is provided that displays the menu for the currently active group.


simpleSAMLphp Authentication

simpleSAMLphp fish logo

This module integrates Drupal with SimpleSAMLphp, the most robust and complete implementation of SAML in PHP. It makes it possible for Drupal to communicate with SAML or Shibboleth identity providers (IdP) for authenticating users. The resulting Drupal site can effectively act as a SAML or Shibboleth service provider (SP).


  • SimpleSAMLphp - you must have SimpleSAMLphp version 1.6 or newer installed and configured to operate as a service provider (SP).

NOTE: Your SimpleSAMLphp SP must be configured to use something other than "phpsession" (the default) for session storage. The alternatives are memcache or sql. The sql option was added in SimpleSAMLphp version 1.7. The simplest solution for folks running SimpleSAMLphp version 1.7 or higher is to edit the SimpleSAMLphp config/config.php by setting store.type => 'sql' and 'store.sql.dsn' => 'sqlite:/path/to/sqlitedatabase.sq3'


  • Just-in-time provisioning of Drupal user accounts based on SAML attributes (configurable).
  • Automatic role assignment based on SAML attributes (configurable).
  • Dual mode - support for traditional Drupal accounts and SAML-authenticated accounts at the same time (configurable).


Views Tagadelic

Implements a Views plugin to display tagcloud-like list of everything handled by views, using the tagadelic module.


Acquia Purge

Graph showing Varnish'es missrate on a typical high performance site.

Top-notch proactive purging on Acquia Cloud!


Image Style Quality

Screenshot at 2012-03-05 17:53:44.png

Set JPG quality per image style

This module allows you to specify a custom quality on different image styles you create. After installing and enabling this module, you will have the option to add a new effect to your image styles, enabling you to change the quality.


Ajax Load

Helper module to load and add JavasScript and CSS data for Ajax-loaded content.

There will be no Drupal 7 version as the functionality provided by AJax load is built into Drupal 7 core's Ajax API. See #1060340: Port AJAX load module to drupal 7..

There is an experimental D6 2.x branch that depends on CTools.

When loading new content via AJAX, there is the potential need to load CSS and Javascript files and data not already available on the page. Ajax Load is a helper module designed to handle this task. It should only be installed for use with another module.

Ajax Load was written to accompany a patch that added AJAX loading to the Views module. When enabled, Ajax Load will ensure that any needed JS and CSS files are loaded along with dynamically loaded views.

Maintained by markus_petrux and nedjo.

Developer usage

To see a full working example, download the dev version, which includes an ajax_load_example module.

Ajax Load implements a drupal_alter() hook, hook_ajax_data_alter().

Ajax Load expects an object or array that is about to be sent in JSON format. The object should have a __callbacks property with Javascript callbacks that the JSON data are to be fed into.



AJAX Poll adds the ability for users to vote on polls without reloading the page. It works with the normal Poll module included with Drupal core. It affects all polls throughout the site, on teaser, full, and block forms of polls.

AJAX Poll provides bare-bones AJAX functionality to the existing poll module without adding any complexity. For greater customization than the core Poll module can provide, see the Decisions or Advanced Poll modules.


Feed Import

Feed Import allows to import content into entities (like nodes, users, taxonomy terms, ...)
from various file or database types.
Also can monitor feed items for changes to update imported entities,
can set an expire time to entities to deleted expired ones when cron runs
or can be used as one time import.
All settings can be made from an easy to use interface.


Relative Path to Absolute URLs

module maintainer @podarok

When you use IMCE with FCK Editor, there's a problem with images on simplenews newsletters and feed images, because the path to images and internal links are referrer in relation to current site.

This module implements a simple filter which replaces src and href attributes like /path/to/link with http://www.example.com/path/to/link, making use of core's url() function.



The Block

The Agenda module allows you to display a list of upcoming events from Google Calendar as a block on your website.

The events are automatically downloaded and cached from the Calendar IDs specified in the Agenda administration page. Unlimited calendars can be added, and the colours for each calendar can be specified in the CSS file.

The output is fully themeable, and uses jQuery for dynamic effects such as rounded corners, and click-toggling extra information.


Open Atrium Work Tracker

A Work tracker for Open Atrium 2.0 (similar to the Case tracker in Open Atrium 1.0) which allows you to create Tasks in order to collaborate on work.

Work Tracker is designed to fit seamlessly into the way Open Atrium 2.0 works and it’s paradigm for flexibility. For example, Work Tracker has no concept of “projects” - instead it groups Tasks together using Open Atrium Sections, which allows users to define for themselves what a “project” is in a way that best fits their organization.

Suggestions, bug reports and patches are welcome in the issue queue!

Quick start

  • Install OpenAtrium 2.0 (version 2.0-rc1 and later install Work Tracker by default!)
  • Create a new Space
  • Create a new Section inside that space, and select "Tasks Section" under "Section Type" (it's below the body and "Weight" fields).
  • Using the add button in the header (looks like a '+' sign), create a new Task!

See the complete Getting started and Configuration guides for more information!



Block Views Visibility

Block Views screenshot

Enables you to specify block visibility based on views pages. It works similar to controlling visibility by content type which is currently in core. It adds a fieldset to the visibility vertical tabs on the admin block configure form enabling you to set which views pages you want the block to display.



Screenshot of editing the node title in-place

Please see the successor to this module: Quick Edit. It's the same code, it's just been renamed.

(Drupal 8 ships with Edit, but decided to rename it to Quick Edit. Hence we did the same to the Drupal 7 backport, for consistency and patch portability.)