35,718 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.

Menu Admin per Menu

By default, Drupal allows only users with the Administer menus and menu items permission to add, modify or delete menu items.

Menu Admin per Menu allows to give roles per menu admin permissions without giving them full admin permission.

For instance, you may let certain users manage the items of the Main or Navigation menus but not those of the Management menu.

Try out a demonstration
Watch a screencast


Facebook YouTube Vimeo Vine

What is "Video" module

Video module allows you to embedded videos from YouTube, Vimeo, Facebook, Vine etc (Drupal 8 only) and upload videos and play using HTML5 video player.

Entityreference prepopulate


Allow prepopulating any Entity reference field via URL

Other modules integration

Search configuration

Combining both search forms, hiding fields, changed labels & reducing node types

This module has five main functions.

  1. Alter the appearance of the core node search form
  2. Group content types for more meaningful searching
  3. Restrict search results by the content type.
    This is a role based restriction.
  4. Restrict search results from showing individual items.
  5. Alter the pager limit (aka number search item results per page).

Admin user (uid 1) is exempt from restrictions.


Use this module when you are running multiple Drupal sites from a single code base (multisite) and you need a different robots.txt file for each one. This module generates the robots.txt file dynamically and gives you the chance to edit it, on a per-site basis, from the web UI.

Note: You must delete or rename the robots.txt file in the root of your Drupal installation for this module to display its own robots.txt file(s).

Menu token

Menu Token module in action

Menu Token module provides tokens, that could be used in title or in path of menu items (links). For example, if you create a menu item with path: "user/[current-user:uid]", the url will be changed "on fly" to: "user/1" (assuming you are user 1).

Tokens are provided by Token module. Menu Token allows to use both global tokens and entity ones: node, user, term, etc. Entity tokens have several methods of substitution: from context, random and user defined.

Menu token Resources

Menu token functionality can be extended gracefully. Following some examples:

  • Menu token module implements Ctools plugin system and allows to plug in new token handlers.
  • Use Menu HTML module and select "Allow html" in your menu item.
  • Superfish integrates jQuery Superfish plugin with your Drupal menus. Use Superfish 1.9-beta5 or greater.
  • Use Extended path aliases to automatically translate paths like 'user/1/mycontent' to 'users/admin/mycontent'. Just need to create a 'root' path alias: 'users/admin'. See #1320842: Work with the Path Auto module.
  • Menu item visibility exposes configurable and extendable visibility settings for menu links. You'll need to set module weights so that Devel node access > Menu item visibility > Menu token.
  • You can use Tokenize Request Parameters module along with the Menu Token to configure this sort of functionality without the need to code a new module. Tokenize Request Parameter allows you to define what URL parameters to convert into tokens. It makes the tokens available to any token module that consumes tokens (Token Filter, Menu Token, Rules, etc.)


TagCloud with multilingual support English

This module Provides a TagCloud and List of Tags.

Tag clouds is a light weight stable module that provides span tags, optimizations; It is also singular in purpose and stable.

Provides a link to the node and not the taxonomy display if the node count is equal to 1. This avoids taxonomy pages with only one node. Defaults to On, can be turned off.

Supports i18n (recently improved with opportunities for improvement)

Commerce PayPal

This project integrates PayPal into the Drupal Commerce payment and checkout systems. It currently supports off-site payment via PayPal Payments Standard (WPS) and PayPal Express Checkout (EC), off-site or on-site payment via PayPal Payments Advanced (PPA) and Payflow Link (PFL), and on-site credit card payment via PayPal Payments Pro (WPP). The PayPal WPS / EC integration supports PayPal's Instant Payment Notifications (IPNs) to react to authorizations, captures, voids, and refunds with full logging for testing and debugging.

We recently added PayPal Bill Me Later support on top of the Express Checkout integration to enable merchants to extend financing opportunities to their customers.

The full integration for PayPal Express Checkout, PayPal Payments Advanced, and Payflow Link was added in the 2.x version of the module and has been verified by PayPal. There is no upgrade path for the 1.x branch, so it has been discontinued. Additionally, this module deprecates the third party project(s) attempting to extend this module for EC support.

Sponsored by Commerce Guys.

Field validation

This module adds an extra tab to each field instance, allowing you to specify validation rules for your field instances.

The following validators are currently included (7.x-2.x):

  • Regular expression
  • Numeric values (optionally specify min and / or max value)
  • length (optionally specify min and / or max length)
  • number of words (optionally specify min and / or max words )
  • Plain text (disallow tags)
  • Must be empty (Anti-Spam: Hide with CSS)
  • Words blacklist
  • number of selections (optionally specify min and / or max selections )
  • Unique
  • Match against a field
  • Match against a property
  • Specific value(s)
  • Require at least one of several fields
  • Equal values on multiple fields
  • Unique values on multiple fields
  • PHP Code (powerfull but dangerous)
  • URL (support internal path and external url validation)
  • Email
  • Pattern (Regular expression lite)
  • Date range2

Following validators are included in sub module field validation extras:

  • Color(HTML5)
  • Date(ISO)
  • EAN number
  • Field collection unique
  • Integer values
  • IP Address
  • Numeric(HTML5, with the option to specify min/max/step)

Message Notify

Message Notify provides a method for sending a message via a notifier plugin. Message Notify comes with plugins for email and SMS and may be extended to other transport mechanisms as required. Message Notify is part of the message stack, a suite of modules that provide a framework for messaging and notifications.

Empty Front Page

Drupal 6 and 7

By default, Drupal fills the front page with the latest content from your site.

This ultra lightweight module modifies this behavior to show no default content on the frontpage. Only the blocks will be displayed.

If you want more features and configurability, consider using one of these modules instead:

Automated Logout

autologout block example

This module provides a site administrator the ability to log users out after a specified time of inactivity.
It is highly customizable and includes "site policies" by role to enforce logout.

Lightweight Directory Access Protocol (LDAP)


The Lightweight Directory Access Protocol (LDAP) project provides integration with LDAP for authentication, user provisioning, authorization, feeds, and views. It also provides apis and building blocks (query and server configuration storage) for other modules.

Views Responsive Grid

#D8CX: This module will not be ported for Drupal 8. Views grids in core have been replaced with DIVs: #1903746: Replace the views grid table template with one using divs!

Views Responsive Grid provides a views plugin for displaying content in a responsive(mobile friendly) grid layout. Rather than trying to force the standard Views grid display to work for mobile this provides the same functionality, but in DIVs instead of tables. Provided is also the ability to specify a horizontal or vertical grid layout which will properly stack the content on a mobile display.


  1. Download module and copy views_responsive_grid folder to sites/all/modules
  2. Enable Views and Views Responsive Grid modules.


  • Horizontal or vertical grid layouts
  • Custom classes for use with responsive themes


How to Use

After enabling the module, create a new view with the responsive grid display format. Specify the number of columns, and the alignment of the grid.


Widget set edit admin

Widgets enables you to centrally manage and configure code snippets on your site such as share and follow buttons or Twitter updates and Facebook like boxes. It implements a user interface that allows you to easily organize and configure various widget elements. Using a UI similar to core’s image styles, elements can be assembled into widget sets which can be reused throughout the site via blocks and other render displays.

The Widgets module is primarily a user interface API and as such includes only generic markup widgets. You can add new custom widgets using the widget definition admin or enable modules that provide widgets. There are several dozen widgets available through the Social media and Service links modules.


  1. Installation. Use standard methods to install the Widgets archive files into your Drupal site. Then go to admin > modules and enable the Widgets module. You will want to install the Social media and/or Service links modules also to provide widget sources.
  2. To display widget sets on your site use the blocks admin at admin > structure > blocks or other method for managing blocks such as Context or Panels. Look for blocks that start with the label "Widgets:" Several pre-built widget sets are provided by the Social media module.


User follow block

Follow adds sitewide and per user links that link to various social networking sites. The links reside in two blocks. The Follow Site block lists all the links for the site itself, and by default is visible on all pages. The Follow User block lists all the follow links for the user and is visible only on user profile pages.

Commerce Flat Rate

This module allows you to define any number of flat rate shipping services via the user interface in conjunction with Commerce Shipping 2.x. When you define a new flat rate service, you specify the base rate for it in the add / edit form. You can further modify the base rate (enabling things like weight or quantity based shipping) using rate calculation rules.

This is functionally equivalent to using product pricing rules to add discounts or fees to base product prices before adding them to the cart.


Allows to use ImageMagick or GraphicsMagick as image toolkit for Image API in Drupal 7 and 8 core. This integration is based on invoking the convert binary through shell access to process images. The Imagick module is an alternative toolkit module that uses the Imagick PHP extension instead.

Admin Toolbar

Admin Toolbar

What is Admin Toolbar module ?

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).

How to use Admin Toolbar module ?

Just install it like any other module.

Migrate Extras

Migrate Extras extends Migrate to provide support for several contributed modules.

The best place to implement migration support for a contributed module is in that module, not in the Migrate or Migrate Extras modules. That way, the migration support is always self-consistent with the current module implementation - it's not practical for the migrate modules to keep up with changes to all other contrib modules. We are no longer adding support for other modules to Migrate Extras.


Migrate Extras 2.5 is now available. This is planned to be the final Migrate Extras release - the only work to be done with Migrate Extras going forward will be to port the contrib module support here directly to the respective supported modules.

Views Megarow

What is Views megarow?

This module allows you to display content coming from a menu callback between
two items of a views result set as a modal-like.
You can use it to display a preview of your node or to build an administrative

In order to use it:

  1. Create a new view
  2. Select the "Megarow table" format
  3. Add a "Megarow links" field
  4. In this field enter one megarow link per line, the structure of a link is the link title and its path joined with a pipe sign (|) (eg: Preview|node/1).
  5. Save your view and display your table
  6. When you will click on a link, Drupal will load what's behind this page and will render it as the megarow content below the current result of the view.

Views megarow has been designed to let you render forms in the megarow meaning
that you can have validation functions that will block the form submission
and once the form is properly submitted the line of results can be refreshed
to display the new values.

Out of the box you don't have an example of this feature, have a look to
Commerce Backoffice to see
an example of this implementation.

Date Popup Authored

Date Popup Authored in action

Date Popup Authored provides a jQuery UI datepicker for the Authored on date field found on node submission forms.

This allows content editors to pick a human-understandable date and not have to type the exact date format of the default Authored on field.

Taxonomy Term Reference Tree Widget

Use custom CSS and the term template feature for awesome select widgets.

About this module

This module provides an expandable tree widget for the Taxonomy Term Reference field in Drupal 7. This widget is intended to serve as a replacement for Drupal's core Taxonomy Term Reference widget, which is a flat list of radio buttons or checkboxes and not necessarily fit for medium to large taxonomy trees.

This widget has the following features:

  • Expand/minimize buttons
  • Fully theme-able
  • Filter and sort available options with a view (if views is installed)
  • The ability to start with the tree either minimized or maximized
  • If you limit the number of selectable options, client-side javascript limits the number of terms that can be selected by disabling the other remaining options when the limit has been reached (this is enforced on the server side too).
  • For large trees, this widget now optionally keeps a list of selected items below the tree.
  • You can use tokens to alter the widget label (good for adding icons, turning the options into links, etc).

This module now comes with a display formatter with the following features:

  • Display taxonomy terms as a nested list by hierarchy.
  • Displayed terms can be altered with tokens or themed using a custom theme function.

Future features include:

    UUID Features Integration

    UUID Features 7.x-1.0-alpha3 fixes some HTML code that made the module completely unusable. Please update ASAP. If you're experiencing WSOD simply remove the module files completely then upload the latest version. The latest version now works with UUID 7.x-1.0-alpha3. Please report any bug you encounter in the issue queue.

    Comparison with other modules with similar functionalities: #1311428: Comparison with Node export (and possibly other modules with similar functionalities)?

    We need patches and reviews! Please contribute here!

    Co-maintainer(s) wanted! Please contact us.

    The UUID Features Integration module provides a mechanism for exporting content (nodes, taxonomy, fields) into a features module. What's that you say? You thought features was only for configuration? This module is meant to be used in the cases where certain pieces of content straddle the line between pure content and configuration.


    • There are relatively static pages (like an About Us page) that have links from your primary navigation. If these were to go missing, your client would certainly say the site is broken.
    • You maintain page nodes for items like Terms of Service or Privacy Policy. These nodes appear on several sites and should always be the same.


    This module is a backport of Drupal 8 Responsive Image module. It allows administrators to optimize images for different devices and resolutions by pairing image styles with CSS media queries. It is implemented as a display formatter for image fields.

    The Picture module uses the "<picture>" element, which was recently added to the HTML specification. While browser support for this new element is currently very limited, this module uses a polyfill library to provide backward compatibility with older browsers.

    While this module cannot account for different connection speeds (such as WiFi vs. 3g), it does limit wasted bandwidth by ensuring delivery of only one image, optimized for the device being used, and therefor can improve mobile performance.