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

Chaos tool suite (ctools)

This suite is primarily a set of APIs and tools to improve the developer experience. It also contains a module called the Page Manager whose job is to manage pages. In particular it manages panel pages, but as it grows it will be able to manage far more than just Panels.

For the moment, it includes the following tools:

  • Plugins -- tools to make it easy for modules to let other modules implement plugins from .inc files.
  • Exportables -- tools to make it easier for modules to have objects that live in database or live in code, such as 'default views'.
  • AJAX responder -- tools to make it easier for the server to handle AJAX requests and tell the client what to do with them.
  • Form tools -- tools to make it easier for forms to deal with AJAX.
  • Object caching -- tool to make it easier to edit an object across multiple page requests and cache the editing work.
  • Contexts -- the notion of wrapping objects in a unified wrapper and providing an API to create and accept these contexts as input.
  • Modal dialog -- tool to make it simple to put a form in a modal dialog.
  • Dependent -- a simple form widget to make form items appear and disappear based upon the selections in another item.
  • Content -- pluggable content types used as panes in Panels and other modules like Dashboard.

Downloads

XML sitemap

The XML sitemap module creates a sitemap that conforms to the sitemaps.org specification. This helps search engines to more intelligently crawl a website and keep their results up to date. The sitemap created by the module can be automatically submitted to Ask, Google, Bing (formerly Windows Live Search), and Yahoo! search engines. The module also comes with several submodules that can add sitemap links for content, menu items, taxonomy terms, and user profiles.

Please read the included README.txt, the handbook documentation, and the current list of known issues for more information before using the module.

Downloads

Devel

A suite of modules containing fun for module developers and themers ...

Downloads

Features

The features module enables the capture and management of features in Drupal. A feature is a collection of Drupal entities which taken together satisfy a certain use-case.

Features provides a UI and API for taking different site building components from modules with exportables and bundling them together in a single feature module. A feature module is like any other Drupal module except that it declares its components (e.g. views, contexts, CCK fields, etc.) in its .info file so that it can be checked, updated, or reverted programmatically.

Downloads

Superfish

Superfish integrates jQuery Superfish plugin with your Drupal menus.

Overview:

  • Unobtrusive JavaScript.
  • Keyboard-accessible, screen reader friendly.
  • Multi-column sub-menus. (Megamenus)
  • Easing effects with the jQuery Easing plug-in.
  • Automatic width calculation (sfAutomaticWidth plugin) (Use the development release)
  • Automatic sub-menu width calculation (Supersubs plugin), automatic sub-menu placement (Supposition plugin; prevents sub-menus from appearing off-screen.)
  • Touch-screen compatible. (almost)
  • Small-screen compatible. (<select> and vertical accordions)
  • RESS (more than just responsive! Window width (client-side) and UA string (client-side and server-side) methods for touch and small screen plugins (no media-queries))
  • RTL (Right-to-left) language support.
  • Plenty of built-in options for designers.
  • And a whole lot more...

Requirements:

  • Superfish library (Download Superfish library)
  • jQuery Update
    • Drupal 6 users: jQuery 1.3.x or higher.
    • Drupal 7 users: jQuery 1.6.1 or higher, only if you want to use the jQuery Easing plugin animation effects.
    • For jQuery 1.9 and above you must manually include the jQuery $.Browser plugin, via your theme .info file for example. (The SF library for Drupal 8 won't support IE7 hence no $.browser dependency)

Recommended additions:

Downloads

Node export

This module allows users to export nodes and then import it into another Drupal installation, or on the same site.

Using this module you can save yourself a lot of time setting up new websites that have similar nodes to websites you've already made, migrating nodes to new Drupal versions, or between development/staging/production sites.

You will need the same content types for the imports to work (unless using Feeds to import), and ideally relevant compatibility with fields, and modules.

Downloads

Views data export

This module is designed to provide a way to export large amounts of data from views. It provides a display plugin that can rendered progressively in a batch. Style plugins are included that support exporting in the following types:

  • CSV
  • Microsoft XLS
  • Microsoft DOC
  • Basic TXT
  • XML.

Advanced usage

This module also exposes a drush command that can execute the view and save its results to a file.

drush views-data-export [view-name] [display-id] [output-file]

Requirements

The batched export functionality of this module requires a MySQL database.
This module also requires version 2.7 or higher of views.

Similar modules

  • Views Bonus Pack includes an export submodule that allows exports, but is not scalable for large data sets.
  • Views Datasource allows exporting to XML/JSON among many others, but is geared towards small exports.
  • Services Views provides ways of exporting views results as XML, JSON and CSV using Services.

Downloads

Backup and Migrate Files

This module is a plugin for Backup and Migrate and does nothing on its own. You must download and install Backup and Migrate 2.x (Aug 24 dev or later) to use this module. This module is not compatible with version 1 of Backup and Migrate.

This module requires the PEAR Archive_Tar library. Please see the README.txt file for information on how to install that library.

Downloads

Elysia Cron

Elysia cron

!NEW Release 2.0 is finally out, with D7 support, code & performance improvements and a lot of new features!

Elysia Cron extends Drupal standard cron, allowing a fine grain control over each task and several ways to add custom cron jobs to your site.

  • [NEW IN 2.0] Set the timings and frequencies of each cron task (you can run some jobs every day at a specified hour, other only monthly and so on...). For each task you can simply choose between some frequently used options ("once a day", "once a month" ...), or use a powerful "linux crontab"-like syntax to set the accurate timings. You can even define your frequently used options to speed up site configuration.
  • Parallel execution of cron task: you can group jobs in channels and execute then simultaneously: so a task that takes a lot of time to execute won't block other tasks that need to be executed every 5 minutes...
  • You can disable all tasks, an entire channel or a single task.
  • Change the priority/order of task execution.
  • Manual force the execution of a cron tasks.
  • Detailed overview of cron status with time statistics for single tasks and channels.
  • [NEW IN 2.0] powerful API for module developers: you can define extra cron tasks for your modules, each one with own default timings (site administrators can override them by configuration, other modules via hook_alter). Elysia Cron 2.0 gives a brand new API support (compatible with 1.0 version) with a lot of features.
  • Administrators can define custom jobs (call to functions with parameters), via the "script" option.
  • Several optimization for frequent cron calls and error handling.
  • Protection from external cron calling by cron_key or allowed host list.

Elysia has no dependencies with contributed modules, and doesn't need to patch the core: it can be used in minimal Drupal installation with only core modules.
It also can be used in a Drupal install profile.

3rd party integration:

  • [NEW IN 2.0] Ping feature, for external tracking services like host-tracker to tell whether cron is functioning properly on your site.
  • [NEW IN 2.0] Drush support: you can call "drush elysia-cron" to manually run extended cron.
  • [NEW IN 2.0] CTools support for exports/backup of task settings.
  • [NEW IN 2.0] Features support.

Downloads

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:

Downloads

Taxonomy CSV import/export

Taxonomy_csv_7.x-5.10.png

This module allows you to import or export taxonomy from or to a CSV (comma-separated values) file or with a copy-and-paste text.

It helps you to quick import a non-standardized vocabulary, for example an old thesaurus, a hierarchical taxonomy or a simple list of children, synonyms, descriptions, weights or related terms to terms. It can be used as a module or as an API with a plug-in mechanism. It can manage internationalized vocabularies with i18n_taxonomy, a submodule of i18n module [Drupal 7 only].

Taxonomy CSV supports drush: you can import/export taxonomies from the command line interface with drush taxocsv-import and drush taxocsv-export.

More informations on Taxonomy CSV import/export are available on the help page in English (7.x version), in English (6.x version) or in French (6.x version). A quick demo is available here, in Dutch.

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

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

OpenID Admin

This module extends Drupal's support for OpenID to allow administrative users to add a set of OpenID's to an account. Included is both a web UI and Drush command.

Downloads

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.

Examples:

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

Downloads

Coder

Coder module screenshot

Coder checks your Drupal code against coding standards

What version to use

Drupal 7

Coder Sniffer requires PHP_CodeSniffer, see the installation instructions. For Coder Upgrade, the latter includes the Grammar Parser and Libraries API. As a developer tool, this project is not like a "typical" project for which you generally want the "recommended" releases on a production site. As a rule, the development releases of this project and its supporting projects are stable and meant to work together.

Drupal 6 and earlier versions

The Drupal 6.x and earlier versions are no longer supported. That means that you can use them and they still should be useful, but if you find any problems with them, there is no point raising an issue about them. If you really want to have support, then you will have to upgrade to Drupal 7 and use the 7.x version of the module. Alternatively, you can install drush and install coder as a drush plugin, and then you can get the latest coder review results on a 6.x code base.

Developer Tools

Downloads

Hacked!

hacked.drupal.png

This module does not and will not prevent your site from being 'hacked'.

This module scans the currently installed Drupal, contributed modules and themes, re-downloads them and determines if they have been changed. Changes are marked clearly and if the diff module is installed then Hacked! will allow you to see the exact lines that have changed.

Hacked! also provides drush integration so that you can see what files have changed from the command line.

This is primarily a developer tool and should never ever (don't even think it) be installed on a production site.

Similar modules

There are a number of other 'integrity' modules, such as 'md5check', 'File integrity check' and 'Sentry'. These modules have features to protect a live site from code changes or to only check Drupal core.

Windows support

Windows is not currently supported by this module, if you want to write a patch to get it fully working, then please post it in the issue queue.

About the Developers

Downloads

Statistics Pro

The Statistics Pro module creates statistics with aggregated data. The data is stored in a new table, which is updated with a cron run. This statistics module provides statistical results of nodes, comments and users. Aggregated statistical data from nodes, comments and users are stored even if the access log table or the watchdog table have been deleted. For presenting the data the Views module is used. When Statistics Pro detects the core Statistics module, the Charts and Graphs module or the Views Charts module it enables specific features dependent on each one of these modules like page visualization reports and graphs. This module is not a replacement for the core Statistics module but offers useful enhancements.

Downloads

Ultimate Cron

Cron list

The Ultimate Cron handling for Drupal.
Runs cron jobs individually in parallel using configurable rules, pool management and load balancing.

2.0 READY FOR BETA TESTING!

Ultimate Cron 2.0 beta is out now. The only Drupal module with a cracker intro! (warning: iPhone killer ...)

Ultimate Cron 1.x documentation can be found at https://drupal.org/node/1666944

The old project page for Ultimate Cron 1.x can be found at https://drupal.org/node/2195381

Changes

  • No more dependecy to Background Process. Ultimate Cron now works without Background Process. However, Background Process is still supported for true parallelism
  • Refactored to use cTools plugins, making it easier to extend Ultimate Cron.
  • Now includes the daemonizer and queue throttling features, previously found in the modules Ultimate Cron Daemonizer and Ultimate Cron Queue Scaler
  • Hopefully a more robust lock and logging mechanism.
  • Integration with nodejs for live update on cron page
  • Nagios support has not been re-implemented (yet?)

Upgrade path

  • Disable cron while upgrading.
  • Existing db-stored settings will be upgraded.
  • Existing features containing Ultimate Cron settings will be stored in db, for easier re-export.
  • Existing log table will be modified. Beware, that if the table contains many entries, the upgrade may take some time.

Plugins

Ultimate Cron is built upon 4 plugin types.

  • Settings: - plugins that provide custom settings for jobs (bundled: general, queue).
  • Schedulers: - plugins that provide a mechanism for whether or not a job should run at a certain time (bundled: simple, crontab).
  • Launchers: - plugins that provide a way of launching jobs (bundled: serial, background_process).
  • Loggers: - plugins that provide a logging backing for job status (bundled: database, cache).

Ultimate Cron 2.x documentation can be found at https://drupal.org/node/2195383

Features

  • Works out-of-the box in most cases (or aims to)
  • Parallel exection of cron jobs
  • Configuration per job (enable/disable, rules, etc.)
  • Multiple rules per cron job
  • Pool management and load balancing using Background process
  • Support for Drupal Queues
  • Overview of cron jobs
  • Log history of cron jobs
  • Status/error messages per cron job, providing easy debugging of troublesome cron jobs
  • Uses hook_cronapi() (Elysia Cron compatible, NOT 2.x, please use hook_cron_alter() for similar functionality)
  • hook_cron_alter() for easy adding/manipulating cron jobs
  • Poormans cron with keepalive a granularity of 1 minute
  • Drush support (list, start, enable/disable jobs from the command line)

Downloads

Path redirect import

Import redirects from CSV

This module allows to include path redirection in a simple way. Provides a simple way to bulk import redirects for Redirect (Drupal 7) or Path Redirect (Drupal 6) modules from a CSV file.

All the necessary redirections can be done at the same time from a CSV file.
Very useful module for moving your website from one path structure to another.

Drupal 6

CSV structure:
'old url', 'new_url', 'redirect_code' = 301

Downloads

Module Builder

A module which auto-generates a skeleton or "scaffolding" for a module, along with hints on how to fill them in. Useful for newbie developers to learn how hooks work, and seasoned developers who are too lazy to look up what arguments a function has to take. But more than this, module builder can generate:

  • A .test file with scaffold for a test case class
  • An api.php file to document the module's hooks
  • A README file

There is also experimental code for generating a theme.

Usage

This module has two different ways of being used, as a Drupal module with an admin UI, and as a Drush plugin. These use the same core API to generate module code. However, most active development of advanced features is taking place on the Drush side of things.

Drupal UI

Install this module as normal and download/process hook data on the settings page. Use the version appropriate for your version of Drupal.

Drush plugin

Install the entire module folder in a place where Drush can find plugins (see Drush documentation for details). It can then be used for any Drupal site that Drush can be used with, independent of Drupal version. Use 7.x-2.x-dev version as a Drush plugin for any version of Drupal, and use Drush 4.x; see the documentation for more details.

Downloads

Database Administration

The dba module provides Drupal administrators with direct access to their Drupal database tables from within the standard Drupal user interface. It is possible to execute scripts to create and alter tables, to backup one or more tables, to view/edit/delete data within tables, and to emtpy or drop tables. If using MySQL, it is also possible to check and repair tables.

Downloads

Commerce Cart Expiration

This module provides a time-based cart expiration feature for Drupal Commerce.

Requirements

Downloads

Performance Logging and Monitoring

D6-7 note: kbahey was kind enough to grant me permissions to bring life back into this project after it was removed from the Devel project this summer 2011.

Downloads

Production check & Production monitor

Production monitor & Production check screenshot

6.x-1.0 & 7.x-1.0-beta1 upgrade notice: Running update.php is required for both modules! Backup your database!

Downloads

Pages