17,399 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.

Redirect 403 to User Login

Redirect the HTTP 403 error page to the Drupal /user/login page with an optional message that reads:

"Access denied! You must login to view this page."

Also, the desired page is appended in the url query string so that, once login is successful, the user is taken directly where they were originally trying to go.

Downloads

Webform Ajax

Overview

This module adds AJAX support to Webform (3.0 and above).

As a first step it focusses to simply add form AJAX paging and submit. Form submissions get ajaxified including prev/next pages. Especially for multipage forms, this leads to faster loading (less data transfer), better usability and finally smaller server load.

There's no backport to previous versions on our roadmap and features are D7 only.

Documentation

Enable the module. You'll be able to configure AJAX enable per form in the advanced form settings.

Known problems

Credits

Downloads

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 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.
  • Superfish integrates jQuery Superfish plugin with your Drupal menus. Use Superfish 1.9-beta5 or greater.
  • 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.

Downloads

Path Breadcrumbs

Settings form

This module is a solution for all problems with the breadcrumbs on your site!

Path Breadcrumbs module helps you to create breadcrumbs for any page with any selection rules and load any entity from the URL!

Features

  • Breadcrumbs navigation may be added to any kind of page: static (example: node/1) or dynamic (example: node/%nid).
  • You can load contexts from URL and use it like tokens for breadcrumb path or title.
  • You can use selection rules for every breadcrumbs navigation.
  • Module supports ALL tokens from Entity tokens module (part of Entity module).
  • Module provides magic token "pb-join" for taxonomy hierarchy (1) and complete menu trail (2).
  • You can import/export breadcrumbs (supports single operations, Features and Ctools bulk export).
  • Breadcrumbs can be cloned to save you time while building navigation.
  • Module provides rich snippets support for breadcrumbs (RDFa and Microdata).
  • Module provides first/last/odd/even classes to every breadcrumb link.
  • You can change breadcrumbs delimiter.
  • Breadcrumbs could be hidden if they contain only one element.
  • You can disable breadcrumbs and enable them later.
  • All breadcrumb titles are translatable.
  • Ctools API & Path Breadcrumbs API

Downloads

SpamSpan filter

The SpamSpan module obfuscates email addresses to help prevent spambots from collecting them. It implements the technique at the SpamSpan website (a German version is also available). The problem with most email address obfuscators is that they rely upon JavaScript being enabled on the client side. This makes the technique inaccessible to people with screen readers. SpamSpan however will produce clickable links if JavaScript is enabled, and will show the email address as example [at] example [dot] com if the browser does not support JavaScript or if JavaScript is disabled.

This technique is unlikely to be absolutely foolproof. It is possible in theory for a determined spambot to harvest addresses from your site no matter how you disguise them. But research suggests that the by far the great majority of spambots do not bother to attempt to collect addresses which have been hidden using JavaScript. Indeed, most spambots cannot currently read JavaScript at all.

Here are a links to the results of a few experiments into the efficacy of JavaScript obfuscation. Let me know if you know of any more.

http://www.cdt.org/speech/spam/030319spamreport.shtml (2003)

Downloads

Disqus

DISQUS is a comments platform that helps you build an active community from your website's audience. It has awesome features, powerful tools, and it's easy to install.

Drupal Integration

  • Display recent comments, popular threads, and other widgets in blocks
  • Provide comments on any node type or user
  • Views 2/3 integration (number of comments)
  • Single Sign-On

Disqus Features

  • Threaded comments and replies
  • Notifications and reply by email
  • Subscribe and RSS options
  • Aggregated comments and social mentions
  • Powerful moderation and admin tools
  • Full spam filtering, blacklists and whitelists
  • Support for Disqus community widgets
  • Connected with a large discussion community
  • Increased exposure and readership

Tutorials

Installation

Scott from Level Up Tuts put together a great tutorial on how to install Disqus on Drupal 7. He walks you through these steps:

  1. Download and install the Disqus module into your respective sites directory (sites/all/modules).

Downloads

Role Delegation

Example of permissions added by Role Delegation

Note: This project is seeking a new maintainer. See #2540976: Seeking new maintainer for details.

This module allows site administrators to grant some roles the authority to assign selected roles to users, without them needing the administer permissions permission.

Downloads

Commerce Checkout Progress

drupal-commerce-checkout-progress.png

Summary

Adds a block visible on checkout pages that shows what step of the checkout process the user is currently on. The status is an unordered list with each checkout page title being an item. The active page is designated in the list with an "active" class.

Downloads

TagCloud

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)

Downloads

Semantic Views

This Views plugin makes unformatted styles, field row styles and other output more readily configurable without needing to override template files. Instead of overriding row style templates for views where you want to specify different HTML elements (tags) and class attributes, you can specify these inside the Views UI and avoid overriding templates for each view.

Downloads

Block Title Link

D7-dev screenshot

Have you ever needed to make a block title a link? This module makes it easy. Block Title Link creates a link field on the Block Admin page. It works by overriding the $block->subject variable and changes it to a link.

Features Support: Block Title Link is compatible with the Features module by using the Strongarm module. Simply select any block_titlelink prefixed variables and they will be exported in your feature.

Downloads

Privatemsg

Privatesg message list

Privatemsg allows your site's visitors to send private messages to each other. Perfect for community oriented sites, such as forums and social networking sites. Many additional features are available as separate modules.

Current features

  1. send and receive private messages on a site (between multiple recipients)
  2. threaded conversations (make it easier to keep track of messages and replies)
  3. search private messages
  4. tagging and filtering (helps organise conversations)
  5. user blocking
  6. e-mail notifications of new messages

Which version of Privatemsg should I use?

Comparison of feature differences between Privatemsg branches

Stable branches: 7.x-1.x and 6.x-1.x

If you are interested in a stable and tested version of Privatemsg, use the latest stable 1.x release. No new features will be added to these branches and the API and UI is stable and will not be changed (including strings for translation).

Development branches: 7.x-2.x and 6.x-2.x

New features are being added constantly to these branches, so use these if you want to test and help with development.

Want to get involved?

Downloads

Image

This module allows users with proper permissions to upload images into Drupal. Thumbnails and additional sizes are created automatically.

Images could be posted individually to the front page, included in stories or grouped in galleries.

Components

Image module ships with several add-on modules:

  • Image Gallery: Using taxonomy terms, organize and display your uploaded pictures in galleries (include Views support if you have Views 6.x-2.6 or later).
  • Image Attach: Allows you to easily attach image nodes to other node types.
  • Image Import: Simplify adding multiple images by importing images from a directory on the server.
  • ImageMagick Advanced: Adds advanced ImageMagick options such as image sharpening to the ImageMagick image toolkit. This component is unsupported.

Downloads

Cache Expiration

Common settings form, module settings

This module provides configurable actions upon events that will expire URLs from caches like reverse proxy caches, internal page caches, etc.This module make more sense when Minimum Cache Lifetime setting is set to a value other than none.

There is now integration with the following modules:

  • Boost - deletes expired pages (files) from the file system.
  • Varnish - integrates over an administrative socket.
  • Purge - expires urls by sending purge requests to Varnish, Squid and Nginx over HTTP.
  • Acquia Purge - allows Drupal sites hosted on Acquia Cloud to automatically purge pages from their Varnish powered load balancers..
  • Memcache Storage - allows to delete pages that cached in a memcached instances.

Module's features may extend if next modules are enabled:

  • Drush - provides drush commands to expire urls (xp-url), paths (xp-path), nodes (xp-node), users (xp-user), comments (xp-comment) from the command line shell and scripts.
  • Rules - provides actions for the Rules module to allow more advanced cache expiration scenarios.
  • Token - provides modal dialog with list of available tokens.
  • References and Entity reference - module may expire referenced entities' urls.

Downloads

view_unpublished

Description:
This module allows you to grant access for specific user roles to view unpublished nodes of a specific type. Access control is quite granular in this regard.

Additionally, using this module does not require any modifications to your existing URL structure.

Downloads

Views Infinite Scroll

Views Infinite Scroll provides a #586668: Pluggable pagers that enables views infinite scrolling ( autopaging, depaging, endless pages ...you name it) by using jquery.autopager plugin. using this module with views page display will load another page whenever the user reaches bottom of the page.

Downloads

Views Bootstrap

Views Boostrap module enables you to create components following the theme structure of the Bootstrap framework all within the configuration settings of the powerful Views module.

Downloads

Commerce Search API

Provides Commerce-specific Search API integration.

Included in the box:

  • Automatically created Search API db server, if none is found.
  • Auto-generated search index that includes all product display node types* and related product data.
  • Auto-generated facets for all node type categories and product attributes.
  • Optional integration with Search API Ranges (allowing for a price slider, for example).
  • Search API Filter class for product display node types* (allowing for an index composed only of product displays)
  • Facet API Filter class for removing facet items that do not change search results.
  • Facet API Filter class for hiding certain facets on the initial search (so that product attribute facets are only shown after the initial search, for example).

* - Every node type with a product reference field is considered a product display node type.

Note: Commerce 1.4 is required, since it added the amount_decimal property, allowing prices to be indexed properly.

Downloads

Smart Trim

Smart Trim implements a new field formatter for textfields (text, text_long, and text_with_summary, if you want to get technical) that improves upon the "Summary or Trimmed" formatter built into Drupal 7.

After installing and enabling Smart Trim, you should see a "Smart trimmed" option in the format dropdown for your text fields. This is located in the "Manage Display" section of "Structure->Content types. With smart trim, you have control over:

Downloads

Token Filter

Token Filter is a very simple module to make token values available as an input filter.

Drupal 7

The module now supports native tokens (e.g. [site:name]) and all global tokens by default. It even allows some contextual tokens like node or user to be replaced, but currently does not encourage users to use them in the filter help text.

Downloads

Domain Access

Screen shot 2011-09-16 at 11.50.21 AM_0.png

Drupal 8 status

See https://github.com/agentrickard/domain for the most current work.

Overview

The Domain Access project is a suite of modules that provide tools for running a group of affiliated sites from one Drupal installation and a single shared database. The module allows you to share users, content, and configurations across a group of sites such as:

  • example.com
  • one.example.com
  • two.example.com
  • my.example.com
  • thisexample.com <-- can use any domain string
  • example.com:3000 <-- treats non-standard ports as unique

By default, these sites share all tables in your Drupal installation. The Domain Prefix module (for Drupal 6) allows for selective, dynamic table prefixing for advanced users.

Installation

Module installation requires edits to your site's settings.php file. See the online installation guide for details.

Technical background

The module uses Drupal's Node Access system to determine what content is available on each site in the network. Unlike other multi-domain modules for Drupal, the Domain Access module determines user access based on the active domain that the user is viewing, rather than which group or site the user belongs to. For more information about Node Access in Drupal, see http://api.drupal.org/api/group/node_access/7

This module uses some advanced Drupal concepts and requires that you understand and control your site's DNS configuration. See this case-study or this more recent Row Eleven Wine Co. post for more details about using Domain Access.

You can also watch video of the DrupalCON Paris session "Managing Multiple Sites with Domain Access" (from 2009).

If you are looking for a module to provide subdomains to users and groups and do not need to affiliate content, take a look at Subdomain.

Downloads

Countries

countries-admin.jpg

This module provides many country related tasks.

  1. A fieldable countries database with an administrative interface.
  2. A way to alter Drupals core country list.
  3. A country FAPI element.
  4. A countries field.
  5. Integration with Country Icons.
  6. Token support.
  7. Up to date countries database including Bonaire, Sint Eustatius and Saba BES, Curaçao CUW, South Sudan SSD, Sint Maarten (Dutch part) SXM which are not covered by Drupal core.

Downloads

Back To Top

Back To Top - Example

Back To Top adds a button that hovers in the bottom of your screen and allow users to smoothly scroll up the page using jQuery.

Back To Top uses jQuery UI library effects for smooth easing of scroll.

Similar modules

Be sure to check out the Scroll To Top module. The module differs from Back To Top in some ways:

  • Back To Top have a different image for scrolling
  • Back To Top have a different animation style
  • Back To Top have more configuration options
  • Back To Top have a prevent on mobile/touch device function
  • Scroll To Top have a 6.x version

Settings

There are settings for:

  • Preventing the button to appear in mobile or touch devices.
  • Choosing between a image och text/css button
  • Placement of the button
  • Style of the text/css button

Theming the button

You can theme or change image by theming on the ID backtotop.

<div id="#backtotop">Back To Top</div>

You can change the text Back To Top with the translation in Drupal.

Developer

Downloads

Video Filter

This is a highly flexible and easily extendable filter module to embed any type of video in your site using a simple token. Other modules can add video sites/formats (called codecs) using an easy plugin architecture.

With WYSIWYG installed, you can use the Video Filter button to easily add videos in a rich text editor. TinyMCE and CKeditor are supported (both standalone and with WYSIWYG).

Downloads

Views Load More

Yes, this is indeed, Yet another load more pager for views.

This module has some very key differences then the other load more module.

  • Provide ajax/no-ajax views load more
  • Works with views default ajax implementation, no hacks (check/uncheck ajax)
  • Supports the Waypoints module for loading on various points, Such as when the scroller is visable on the page.
  • Supports the Fade effect when loading new content.

Install the Waypoints module for extra features.

Downloads

Pages