4,620 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.

Linkit Picker

Linkit Picker with Linkit

Linkit Picker is an extention to Linkit.
Linkit Picker adds the possibility to "browse" links via views.

Current support for nodes, users and terms

This modules is using views to build tables with link data so its easy to customize if you would like to.


Node Class

Node Class

Node Class is a simple module that allows users to add custom CSS classes to any node through the node/add interface.

For Drupal 6 only

Add the following PHP snippet to your node.tpl.php

<?php print node_class($node) ?>

So your new node.tpl.php



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.


Entityform block

Allows to load a specified entity form as a block.

Drupal 7 usage

Requires Entityform.

After enabling the module, the entityforms will have an optional checkbox to make them a block.

Drupal 8 usage

Go to the Block layout admin page (admin/structure/block), press Place block in the desired region and select Entity form.


Quick Edit

Screenshot of a node being quick-edited.

Quick Edit allows content to be edited in-place.

Quick Edit is a backport of the Drupal 8 In-place editing for Fields.


Replicate UI

Screencast showcasing what this module provides.

This provides user interface integration for the simple yet powerful Replicate API. Most notably, this provides integration with Drupal actions which means that you can start to replicate things via the user interfaces with built in support for:


Responsive images and styles

Example of a suffix


This module solves the problems with images and responsive themes, it allows you to define multiple image style suffixes and their corresponding maximum width.

The future (Drupal 8)

See #1757518: D7 backport of Picture: Since picture is now part of Drupal 8, we have backported that code to Drupal 7, picture 7.x-1.x


  • Before upgrading Drupal 7.20, please read the release notes, since this will break this module. To fix it you need to add $conf['image_allow_insecure_derivatives'] = TRUE; to your settings.php file. There's an issue trying to solve this #1923936: Responsive images and styles module doesn't work with Drupal 7.20, but upgrading to the picture module will solve this as well.
  • Selecting _default as suffix might break your theme, safer is to always use __ (2 underscores) like __default.
  • Be care full if you use the force reload on resize option, it will generate more request to your server and might have a negative impact on your performance.


  • Full support for image fields
  • Full support for colorbox
  • Partial support for field_slideshow
  • Doesn't need any changes to .htaccess / nginx


Mobile Switch

Use Mobile Switch

The Mobile Switch module provides various functionalities to develop mobile ready websites, based on device detection by Browscap or Mobile Detect.




Webform Template

Webform template settings

Copy webform configuration from one node to another

This is an add-on module for Webform that allows you to select webform enabled content types as "source" and/or "destination" types. On node edit/creation of the so called "destination" types, you have to option to apply (= copy) the webform settings (including all webform fields) from nodes of the "source" type.

That way you can easily copy webform configuration from one node to another.

However, if you want regular fields attached to the node to copy (e.g., the body field), you should use the Node clone module.

What are webforms:

From the Webform project page:

Webform is the module for making surveys in Drupal. After a submission, users may be sent an e-mail "receipt" as well as sending a notification to administrators. Results can be exported into Excel or other spreadsheet applications. Webform also provides some basic statistical review and has and extensive API for expanding its features.


Content Management Filter

This module adds an easier way for administrators to filter the content on a Drupal site for administration purposes.

CMF is an alternative to the Administer >> Content management >> Content tool with these additional options:



The Webform2PDF Drupal module is an extension of the Webform module. It can be used to generate PDF document from the results of a form. The generated PDF document can be attached to the form summary e-mail sent by Webform module, or it can be downloaded from the /Results/ page. Different PDF templates can be set for each form. The templates can be formatted with HTML tags, and they can be edited with WYSIWYG Drupal module, making the template creation easy and the templates highly customizable.


Scald: Media Management made easy

Logo Scald

Drupal 8

Scald is a popular and flexible way to handle media in Drupal.

Scald can handle images, video, audio, tweets and even Flash files. Scald works with YouTube, Vimeo, Soundcloud and many other providers. You can see a full list on the scald provider's page, you can also read our FAQ.


Media: Flickr

Drupal LEGO figures, by Gábor Hojtsy

Media: Flickr adds Flickr as a supported media provider.

Most popular web services, including Flickr, support oEmbed. It is generally recommended to use Media: oEmbed instead of specific provider modules.


7.x branch depend on Media Internet, a module provided by the Media module.


Page Preview

Page Preview being used with the Rubik admistration theme

Page Preview is a low-impact alternative to Drupal's core node preview functionality.

This module re-implements the Preview area of the node edit form as an IFRAME that renders and displays the full page view of your edited content as the anonymous user would see it, including elements such as blocks that display as a reaction to the page context. The module also supports Page Manager (part of the Chaos Tools suite), meaning you should be able to preview nodes that are being rendered by Panels in full page form, as well.


H5P - Create and Share Rich Content and Applications

H5P interactive video

With this module you will be able to create interactive videos, question sets, drag and drop questions, multichoice questions, boardgames, presentations, flashcards and more using Drupal.

All the content is HTML5, meaning it will work great on smartphones, tablets and other mobile devices. With H5P, you create and edit HTML5 content directly in your web browser just like you edit any other Drupal content.


Bulk Media Upload

What this module does:

With Bulk Media Upload you can upload a bunch of files and a new node, taxonomy term, or other entity will be created for every file. The files are selected via a browser file upload dialog and can be stored in a file or image field.
Also default values can be chosen for the other fields assigned to the new node.

This module is looking for a new maintainer.


Corresponding node references

New development is done in the http://drupal.org/project/cer module. This expands the corresponding node reference functionality to enitities. Please focus all attention on getting a stable release of cer as soon as possible.

Cnr is looking for a comaintainer to resolve the remaining bugs. No new features will be handled.



It syncs the node reference between two node types which have a nodereference to each other, so double editing nodes is no more needed. If one node has a reference the other node receives also a reference to the saved node if it is referenced in that node.


Release 6.x-4.0 doesnt require setting the options to unlimited, all is handled by cck now. The old setting to allow setting to single is no longer present since it is obsolete. To upgrade, run update.php and manualy set the allowed references on each nodereference instance. The older branches are not supported anymore so you should upgrade.


6.x : CCK
Node reference (comes with cck)
7.x: Node reference (included in References)



Commerce Price Savings Formatter

Screenshot of the stacked Commerce Price Savings formatter

This module is an extension of Drupal Commerce that provides a display formatter for the Commerce Price field which shows the amount of savings when a discount is applied.


  • Formatted price display that is similar to what is seen on many popular e-commerce sites (see attached screenshot).
  • List price and Savings takes into account any tax amount applied to the current price (ie. VAT tax)
  • Show/Hide price labels
  • Select which values to show - List Price, Your Price, Savings
  • Display stacked or inline


Publish button

A screenshot of the Save, Preview and Publish button

Adds a publish and unpublish button for a simpler editorial workflow.


Install module.

After installation, on each content type there are a new setting at publishing options and to activate publish/unpublish button for the content type you are editing, you need to check 'Use publish/unpublish button for this content type' and save.

After that you need to add permissions for which roles that could publish content.

Now, when you edit/creates a new node, there are a publish or unpublish button for all the content types that have the button settings if the role have the right permission.


Views 3.x is supported. In the field section a publish button is added.


Normally permissions for publish nodes is not used with this module, instead it has it owns permissions.


For documentation, see the handbook page. Also, see Module Monday: Publish Button.


Publish content adds similar functionality, but uses tabs instead. Save as draft also adds some similar functionality.



Overlay Paths

This is a simple module that enables site builders to use the built-in Overlay for non-admin pages.

This means that you can use the overlay for doing popups without adding yet more javascript libraries to your site.

This module provides a simple UI for defining paths to appear in the overlay, but developers can use it to define paths too, see the overlay_paths.api.php file in the module for details.



Yandex.Share widgets

Yandex.Share integrates https://tech.yandex.ru/share/ with Drupal.


Publication Date


The Publication Date module adds a "Published on" date for each node, containing the date when it was first published.

Without this, the only dates available for nodes are their created date and changed date, but these are often insufficient to meet the needs of publishing workflows. Sorting nodes by their created date doesn't account for content which is held in draft form for a time while being readied for publication. Sorting nodes by their changed date fails to account for content needing minor corrections after being published.


Node Hierarchy

Node Hierarchy allows nodes to be children of other nodes creating a tree-like hierarchy of content. The module offers:

  • 1-Click creation of hierarchical menus
  • Hierarchical breadcrumbs
  • Automatic hierarchical urls using Pathauto (and token module)
    (eg: q=aboutus/history/beginning).
  • Automatic creation of hierarchical menus if desired.
  • Optional Views integration.
  • Optional Node Access integration.



The Autosave module automatically saves a snapshot of your content type form using AJAX. If the user's browser or machine dies while editing a node; the edits will be presented to the user the next time they return to the node. The user may toggle back and forth between the last saved version and the version with the edits that were lost and select which of these they would like to continue with.

How often a form is autosaved as well as which content types to enable autosave for are admin configurable.

This module requires:
jQuery Update (Drupal 5 version only)
jQuery Field Plugin (modified version included with module)

6.x-2.x Version

NOTE: if used with JS editor requires latest dev version of WYSIWYG module and patch listed below.

  • 6.x-2.0 version is a complete re-write to remove dependencies on TinyMCE.


Block Attributes

Screenshot of the Block Attributes configuration fields added by the module on the Block Configuration forms.

The Block Attributes module allows users to specify additional HTML attributes for blocks, through the block's configuration interface, such as class, id, style, title and more.

It appeared the ability for users to configure Blocks' HTML ID, classes or custom styles has been a recurring request (for quite some time). Therefore, this module attempts to provide a solution for these cases and support more HTML attributes for blocks.