39,805 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.

Slick Views

Drupal Slick carousel

Provides Views style plugin for Ken Wheeler's Slick carousel.

See http://kenwheeler.github.io/slick

Slick Views module demos

Slick views adds a new display style to views called Slick carousel. Similar to how you select HTML List or Unformatted List as display styles.

MailChimp

This module provides integration with MailChimp, a popular email delivery service. The module makes it easy for website users or visitors to control which of your email lists they want to be on (or off), lets you generate and send MailChimp email campaigns from your site, and lets you and your users view a history of emails they have been sent from MailChimp. More generally, it aspires to makes your email delivery world efficient and to make your user's email receipt and control simple and precise.

Rabbit Hole

What is this?

Rabbit Hole is a module that adds the ability to control what should happen when an entity is being viewed at its own page.

Perhaps you have a content type that never should be displayed on its own page, like an image content type that's displayed in a carousel. Rabbit Hole can prevent this node from being accessible on its own page, through node/xxx.

Options

This works by providing multiple options to control what should happen when the entity is being viewed at its own page. You have the ability to

  • Deliver an access denied page.
  • Deliver a page not found page.
  • Issue a page redirect to any path or external url.
  • Or simply display the entity (regular behavior).

This is configurable per bundle and per entity. There is also a permission that lets certain roles override Rabbit Hole completely.

It's possible to evaluate PHP for the redirect path. This makes it possible to execute different redirects based on whatever logics you need. Perhaps you want a user to be able to view nodes that he has created, but no one else's. The PHP evaluation is limited to users with the appropriate permission, so there's no unnecessary security breach.

Supported entities

ThemeKey

ThemeKey allows you to define simple or sophisticated theme-switching rules which allow automatic selection of a theme depending on current path, taxonomy terms, language, node-type, and many, many other properties. It can also be easily extended to support additional properties exposed by other modules. In combination with Drupal's theme inheritance you can easily achieve features like:

  • individually-styled channels
  • a front-page / "splash" screen
  • a date/time-selected Christmas theme
  • mobile themes for different auto-detected mobile devices
  • special themes for "limited" or "old" browsers
  • content, user, or role -specific themes
  • indicating your environment (production, staging, testing, sandbox, … )
  • testing your redesign safely on a live server
  • ...

And unlike other theme switching modules, ThemeKey should play well with internal and external page caches, like Boost or Varnish, even for anonymous users.

Feedback is welcome!

Damn, ThemeKey ... ROCKS! Really appreciate the kick ass work you did on this :) mortendk

Poormanscron

A module which runs the Drupal cron operation using normal browser/page requests instead of having to set up a crontab to request the cron.php script. The module inserts a small amount of JavaScript on each page of your site that when a certain amount of time has passed since the last cron run, calls an AJAX request to run the cron tasks. Your users should not notice any kind of delay or disruption when viewing your site. However, this approach requires that your site gets regular traffic/visitors in order to trigger the cron request.

Commerce Shipping

Commerce Shipping provides a shipping rate calculation system for Drupal Commerce, integrating shipping service selection into both the checkout form and order edit form. This module is a framework that is meant to be used in conjunction with shipping method modules like Commerce Flat Rate, Commerce UPS, and others.

Shipping service availability and rate calculation is handled in the user interface through Rules and is backed up by an API that gives you a high level of flexibility to implement simple or complex shipping scenarios.

Developers and users of this module should use the new and improved Commerce Shipping 2.x version. Sites created using Commerce Shipping 1.x can find notes on what has changed and how to update in the release notes for the Commerce Shipping 2.0 release.

Development sponsored by Reveal IT and Commerce Guys.

Views Autocomplete Filters

#D8CX: I pledge that Views Autocomplete Filters will have a full Drupal 8 release on the day that Drupal 8 is released

#1604690: Seeking co-maintainer(s) for drupal6 versions

Add autocomplete functionality to the views filter text fields.

  • It works for node titles or cck text fields.
  • The autocomplete results are actually the view results, so they are view related.

How to use it:
(New) Video Tutorial : Drupal 7 Views Autocomplete Filter Tutorial

  • *** The filter field should also in the view list of the fields
  • You just have to check Use Autocomplete checkbox in the filter expose settings.
  • (D7) Pay attention to the "Field with autocomplete results" options - an autocomplete setting
  • Known issue : Unexpected error message such - Field with autocomplete results is not selected for Content: Title filter.
    Solution : Check the MASTER (default) Display, probably the autocomplete field was removed (#1748900: Field with autocomplete results is not selected)

Tips & Tricks:

  • To work as you wish you have to make the right choice for the operator of filter field, most likely to use "Contains"

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.

Geolocation Field

Google Maps widget

Geolocation Field defines a new field type to store geographical locations as pairs of latitude and longitude (lan,lng). The Geolocation Field can be used with all fieldable entities like nodes, users, comments, taxonomy terms, etc.

ImageMagick

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.

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)

Views fieldsets

Views fields UI

Creates fieldset (and details and div) in Views fields output, to group fields, by adding a new field: "Global: Fieldset" and a few preprocessors. Also introduces a new template: views-fieldsets-fieldset.tpl.php where you can customize your fieldset output.

Navbar

Note: Previously named "Mobile Friendly Navigation Toolbar"
A very simple mobile friendly navigation toolbar introduced as part of the Spark project to solve mobile editing problems with the Drupal 7 shipped toolbar, that is not very friendly to small screen sizes.

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:

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.

Less CSS Preprocessor

less.png

This is a preprocessor for LESS files.

This module will automatically process any LESS files that are added using drupal_add_css(), or added through your module/theme's .info file.

Add your files just like any other css file, just with ".css.less" as the extension, and they will be automatically processed.

RTL support will work as long as your file extension is ".css.less".

7.x-4.0 Features (PHP 5.3+ required)

7.x-3.0 Features

There are several new features:

The included less_demo module should provide API demonstration for new features.

Requirements

  • Libraries API
  • less.php and unpack it so that 'lessc.inc.php' is located at 'sites/all/libraries/lessphp/lessc.inc.php'.

Compatibility

Fully compatible with CSS aggregation:

Drupal 6 "Optimize CSS files" setting under "Administer→Site configuration→Performance" (admin/settings/performance).

Drupal 7 "Aggregate and compress CSS files" setting under "Administration→Configuration→Development→Performance" (admin/config/development/performance)

Message

UAS (User activity stream) example

The Message module is the core of the message stack. It enables logging and displaying system events in a number of different use cases. Events that are recorded over time are sometimes call activity streams. Exportable messages subtypes can be created for different use cases with custom fields and display (view) modes.

Focal Point

ABOUT

Focal Point allows you to specify the portion of an image that is most important. This information can be used when the image is cropped or cropped and scaled so that you don't, for example, end up with an image that cuts off the subject's head.

TableField

Input Widget > Table Display

This module allows you to attach tabular data to an entity. The input form allows the user to specify the number of rows/columns and allows entry into each table cell using text fields. Tables can be defined globally and on a per-entity basis, so every node can have multiple tables of arbitrary size. Enter data by hand or by CSV upload. Table data can also be downloaded as CSV files by your users if you so choose. Tables can be multi-value and revision capable.

Extend

Modules that extend TableField:

Menu Trail By Path

Menu Trail By Path sets the active-trail on menu items according to the current url.

For example if you are at yoursite.com/blog/category1/article1
Menu Items with these paths will get the active-trail class on them and expand accordingly.

blog
blog/category1
blog/category1/article1

This is particularly useful if you want a lot of nodes to appear as children of certain nodes / taxonomy term / views / referenced nodes / etc, but do not want to add them all to the menu. eg. hundreds of blog articles.

Entity Browser

Entity browser logo by David Ličen

Goal of this module is to provide a generic entity browser/picker/selector. It can be used in any context where one needs to select few entities and do something with them.

Possible use cases:

Schema

Introduced in Drupal 6, the Schema API allows modules to declare their database tables in a structured array (similar to the Form API) and provides API functions for creating, dropping, and changing tables, columns, keys, and indexes.

The Schema module provides additional Schema-related functionality not provided by the core Schema API that is useful for module developers. Currently, this includes:

Configuration Update Manager

The Configuration Update Manager project contains a base module and a reporting module.

Use the base module if another project has it as a dependency (example: Features).

The report module supplements the core Configuration Manager module, by providing a report that allows you to see the differences between the configuration items provided by the current versions of your installed modules, themes, and install profile, and the configuration on your site. The report is available from the administration UI, or via Drush commands.

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)

Pages