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

Internal Links

Enable the filter(s) for an input type and run filters in appropriate order.

The Internal Links module, Intlinks, is a simple set (currently two) of input filters which modify the output of internal, root-relative links in any text input format for which they are enabled. The title filter allows you to have the node titles of linked content automatically inserted into the link as the HTML "title" attribute, with "node/123" -type href paths converted to URL aliases, too. It is especially useful for streamlining the editorial workflow and improving SEO. You can also use the "Hide bad" filter to "unlink" unpublished content so visitors don’t encounter "page not found" errors.


Maintainer and Author: Lowell Montgomery.


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


iTweak Upload

iTweak Upload Screenshot (Mac)

iTweak Upload module revamps Drupal file uploads with sexy thumbnail previews and mime icons, adds image gallery views for attachments and tweaks file upload forms and attachments display.

Summary of features (Drupal 6):

  • Beautify and improve the upload form for file attachments in nodes and comments (created by core upload.module and by Comment Upload module)
  • (Option) Preview uploaded image files
  • (Option) Display thumbnails for image attachments
  • (Option) Display image attachments in a gallery
  • (Option) Show images in animated popup, grouped or slideshow with one of many image popup modules (see below)
  • Independent of theme - works with any theme that does not already customize file uploads.
  • Compatible with popular modules download_count, private_upload
  • jCarousel (if installed) can be used for the image attachments gallery (experimental)
  • jCarousel Lite (if installed) can be used for the image attachments gallery (experimental)
  • Insert feature added to the files upload form (Insert module required)
  • Insert feature preview of presets (experimental)

See details for Drupal 7 features (in active development).


Node expire

This module allows you to set a "timer" into content nodes. When it reaches zero, you can perform any type of action with the node, such as unpublishing it or sending an email to the author.


  • Perform custom actions when the nodes expire
  • Granular permissions: let only some users to modify the node expiration date
  • Date field can use jQuery Date Popup widget, if Date module is installed with Date Popup enabled
  • All data exported to Views, if enabled
  • Drupal code compliance



NodeReferrer provides a counter part to CCK's nodereference field. The options for a NodeReferrer field allow you to select content types and field instances to match when creating back reference lists.

Similar modules


WordStream Keyword Tools

WordStream Free Keyword Niche Tool screenshot

The WordStream module integrates WordStream keyword tools into your Drupal site. The WordStream service provides a keyword research api (with a free account option). The WordStream module provides access to both classes of keyword tools.

With this module you can explore how often certain terms are searched for and the popularity of keyword variants.

The WordStream module also acts as a data source for the Keyword Research module which provides a rich user interface for keyword analysis and management.

Currently the module is operational, future plans are to implement additional WordStream reporting.

For installation, follow the instructions in the README.txt file.

Requirements & recommendations

Required modules:

  • None

Recommended modules:

  • Keyword Research - Enables keyword management and integration with other keyword research data sources
  • Drupal SEO Tools - integrated dashboard for SEO reporting, analytics and optimization



Meta tags Node Type

This module extends the functionality of Nodewords so that certain meta tags can be specified on a per node type basis.


  • Support "robots" meta tag.
  • Support "keywords" meta tag.
  • Support "description" meta tag.
  • It uses Token module allowing token replacements.
  • It allows advanced PHP replacements for the "description" meta tag.

Note: You may want to look at Custom Tokens to define your own tokens.


  • Enable the module
  • Go to Administer -> Content types
  • Edit any content type and look for the Meta tags node type field set.
  • Configure any default keywords, description and robots for that content type.
  • Note: For each content type, if you fill in keywords, description or robots, those will be used in place of the nodewords global defaults, so bear in mind to include them in the content type meta tag node type fields if you need them as well.

    Note: if you leave keywords and description empty, the nodewords global default will be used. However, for robots, you must specify a default, otherwise no robots will be displayed on that content type.


Copyright Block module

About this Module

This module creates a block that allows you to configure a copyright message that automatically updates using the current year from the server that your site is hosted on.

It does this by adding a new token called [copyright_statement:dates] that you can place within your message. A start year when needed, and the date separator can be changed if needed.

A default message is provided that includes the [site:name] token.


Feeds extensible parsers

A set of extensible parsers for Feeds.




Create nodes by email!

Mailhandler uses Feeds to let you post nodes by email. It takes mail (usually from an IMAP mailbox) and imports it as whatever type of content you choose. Plug-in modules allow you to do more awesome things like post comments, select different authentication methods, and set properties such as published / sticky status using "commands". Hugely powerful and flexible, but includes a "quick-start" module to help get you started.


Custom add another

This is a very simple module that allows you to customise the text of the 'Add another item' button on multi-valued fields.

If your field supports 'unlimited' values then you are offered the option of customising the 'Add another item' button text. This setting is stored per 'bundle', so you can have different button text if you use the same field in two places.


This module requires Drupal core 7.8 or higher.


Workbench Email

Provides a way for administrators to define email transitions and configurable email subject / messages between those transitions. Email transitions can be defined as when content moves from state to state. Based on those email transitions, configurable emails can be created / updated / deleted as the site admin see's fit.

Example: When a content creator moves a piece of content from draft to needs review, they will be presented with a list of users that they can email the content update to. Selecting user(s) will send emails with the subject / message defined in the workbench email configuration page.

About Workbench

Workbench is a suite of modules which provide easier content management for content administrators. Each of the "Workbench" modules has been tested to work with the main Workbench module, and with the other modules in the Workbench suite. The Workbench suite is modular, allowing site builders to build the workflow that best suits the content administrators on their site. The Workbench suite provides authors, editors, and publishers with a unified interface for managing content relevant to them. It allows people to focus on content, rather than on learning Drupal.


Language field

This module creates a Language Field. You use this if you need more languages, but do not need the translations. Example: Your site contains two languages, but contains content type 'Manuals' in 5 languages.

Language Field contains several formatter options, including integration with Language icons.
Per field instance you can decide to display all, all enabled or all installed (including disabled) languages.


Node Edit Protection

Halt! Who goes there?!?!

A very simple JavaScript based protection that will alert a user if they are navigating away from a modified Node Edit form without saving. It uses a standard JavaScript confirm dialog that allows the user to either continue what they were doing, or cancel the move allowing them the opportunity to save. It marks the form as dirty by using the blur event of the node fields.

This module was sponsored by Phase2 Technology and KYbest.


Featured Content



The Featured Content module lets you very easily create related/featured content blocks on your Drupal site. This module is useful if you have non-technical users who need to add blocks on the site that contain lists of node titles, node teasers, and/or full node content. This module can also be useful if you need to get up some featured/related content blocks quickly and are not familiar enough with views to do it, or simply prefer not to use views for this purpose. A related/featured content block can be created in just a few minutes.

Language support was added in version 1.5 for both D6 & D7. If you have a multilingual website, please use 1.5 or above.

Do not use the 6.x-2.x-dev and 7.x-2.x-dev branches as they are for experimenting with performance enhancements. If you want to grab a *dev* version (which we try to keep stable), then grab the 1.x version in the downloads section.

NOTE: If you have a large site (lots of nodes and/or users), this module will likely NOT be a good fit as there is currently NO caching (views is recommended in that case). If someone is interested in becoming a co-maintainer and working on the caching code (in the 2.x branch), please add an issue to the queue. Thanks!



CKEditor for WYSIWYG Module

This module provides a WYSIWYG editor using the CKEditor library. While there are other approaches to integrating CKEditor into Drupal (through either the WYSIWYG module or CKEditor module), this project takes a combination approach mixing the best from WYSIWYG module (generic bindings to text formats) with tight direct integration with Drupal. The current version of CKEditor bundled is 4.2.

This module is currently experimental. It does not yet integrate with any existing 3rd party modules such as Media or WYSIWYG Fields. Support for these modules is planned through WYSIWYG API for Drupal 7, but not yet integrated.


  • Bundled lightweight CKEditor 4.x version, optimized for Drupal integration (no unneeded plugins makes for faster loading). No need to download the editor separately.
  • Additional add-on plugins that tightly integrate Drupal with CKEditor
    • Drupal Image plugin
    • Drupal Image captioning plugin
    • Webkit Resize plugin (adds support for resize handles in Chrome/Safari)
  • Dependency on WYSIWYG module keeps compatibility with other WYSIWYG editors
  • Uses absolutely no inline styles. All buttons and cleanup uses a consistent set of classes which can be themed.



    Read only mode

    What is Read Only Mode?

    Read Only Mode provides an alternate to the built in Maintenance Mode in Drupal. Instead of displaying a static text file to users while the site is in maintenance mode, Read Only Mode will allow access (reading) of new content while preventing the addition of new content (posting / submitting forms / etc).

    This allows the site to remain functional while maintenance is performed. This module also provides messaging to users and administrators to indicate that the site is in maintenance mode.



    This module currently does the following:


    Node view count

    Node View Count module allows to count node views. Unlike statistics module, this module records each view of node with user uid and timestamp. So now you can know how many times a user viewed node by day, week, month and etc.

    This module is integrated with Views module. You can use it to create different statistics pages, output new not viewed nodes for user and many more.



    Auto Index

    Automatically updates the Drupal search index when a node is added or updated, on the fly, without the need to execute cron.php.

    This module should be used when an up-to-date index is desired/required after any addition or update of indexable node content. Not just after the successful execution of cron.php.

    This module is ideal for projects where, other than search indexing, there is no need to run cron often. Use this module to ensure your search index is up-to-date while keeping the frequency of cron executions to a minimum.



    Provides an administrative interface for managing content in moderation.

    Allows you to preview content, as well as approve or deny, and send messages to the author informing them of your choice.


    jQuery Tabs Field

    Module description

    jQuery Tabs Field module allows you to create jQuery Tabs field. Using this you can add upto 7 tabs with tab title and tab body in a node. After saving node, the module will display all these 7 tabs as jQuery tabs.

    This module is very useful for content types where you want to display information tabs wise for example product pages etc.



    #D7CX: I pledge that Wikitools will have a full Drupal 7 release on the day that Drupal 7 is released.

    The wikitools module provides some settings to get a more wiki-like behavior. It aims to be lightweight; all features are optional, and it provides no database tables of its own. If you have ideas about cool new features for this module, please post an issue. All new features go into the 6.x branch; I encourage others to present patches with backports. Some of the features of this module are:


    CCK Select Other

    Conditional Select Field Example

    CCK Select Other introduces an alternative select list widget that provides a user with either a select list or text input.



    The Spam module provides numerous tools to auto-detect and deal with spam content that is posted to your site, without having to rely on third-party services.

    The Spam module provides a trainable Bayesian filter, automatic learning of spammer URLs, flagging of content with an excessive number of links, the ability to create custom filters, and more.

    [UPDATE: 1.2 was not correct as some of the hooks would not get defined. More or less, that means some of the functionality would not work properly. Please upgrade to 1.3 to fix the problem. See #1222546: The List of Spam Comments is Broken and #1298480: "Mark as Spam" and "Mark as Not Spam" links for comments going to 404 page. among other similar bug reports.]