1,296 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

Administration menu

Administration menu (back-end) for Drupal

Provides a theme-independent administration interface (aka. navigation, back-end). It's a helper for novice users coming from other CMS, a time-saver for site administrators, and useful for developers and site builders.

Administrative links are displayed in a CSS/JS-based menu at the top on all pages of your site. It not only contains regular menu items — tasks and actions are also included, enabling fast access to any administrative resource your Drupal site provides.

Downloads

Backup and Migrate

Back up and restore your Drupal MySQL database, code, and files or migrate a site between environments. Backup and Migrate supports gzip, bzip and zip compression as well as automatic scheduled backups.

With Backup and Migrate you can dump some or all of your database tables to a file download or save to a file on the server or offsite, and to restore from an uploaded or previously saved database dump. You can choose which tables and what data to backup and cache data is excluded by default.

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

Devel

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

Downloads

Job Scheduler

Simple API for scheduling tasks once at a predetermined time or periodically at a fixed interval.

If you plan to use this API in your module in 6.x, make sure to review upcoming API changes.

Downloads

Masquerade

The Masquerade module allows site administrators (or anyone with enough permissions) to switch users and surf the site as that user (no password required). That person can switch back to their own user account at any time.

This is helpful for site developers when trying to determine what a client, logged in as themselves, might see when logged into the site.

Downloads

simplehtmldom API

The module is a bridge between simplehtmldom PHP library and Drupal.
It provides powerful API for HTML parsing. Also, it works fine with broken markup.

Downloads

ACL

The ACL module, short for Access Control Lists, is an API for other modules to create lists of users and give them access to nodes. It has no UI of its own and will not do anything by itself; install this module only if some other module tells you to.

We're aware of the following modules using ACL (let us know if you know of others):

Downloads

Widgets

Widget set edit admin

Widgets enables you to centrally manage and configure code snippets on your site such as share and follow buttons or Twitter updates and Facebook like boxes. It implements a user interface that allows you to easily organize and configure various widget elements. Using a UI similar to core’s image styles, elements can be assembled into widget sets which can be reused throughout the site via blocks and other render displays.

The Widgets module is primarily a user interface API and as such includes only generic markup widgets. You can add new custom widgets using the widget definition admin or enable modules that provide widgets. There are several dozen widgets available through the Social media and Service links modules.

Usage

  1. Installation. Use standard methods to install the Widgets archive files into your Drupal site. Then go to admin > modules and enable the Widgets module. You will want to install the Social media and/or Service links modules also to provide widget sources.
  2. To display widget sets on your site use the blocks admin at admin > structure > blocks or other method for managing blocks such as Context or Panels. Look for blocks that start with the label "Widgets:" Several pre-built widget sets are provided by the Social media module.

Downloads

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)

Downloads

Backup and Migrate Files

NOTE: This module has now been rolled into the 3.x branch of Backup and Migrate and is no longer supported independently.

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.

Downloads

Autoload

The autoload module is a utility module. It allows other modules to leverage PHP 5's class autoloading capabilities in a unified fashion. It does, naturally, require PHP 5.1.2 or later.

You do not need this module unless you are developing a module that makes use of classes or you are installing a module that depends on this one.

The 1.x branch uses a manual info-hook. The 2.x branch includes a backport of the Drupal 7 self-learning registry as well as the info hook for backward compatibility.

Downloads

getID3()

The getID3() Drupal module facilitates the installation and management of the getID3() PHP library, used to extract useful information from MP3s and other multimedia file formats.

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

HTTP Parallel Request & Threading Library

Blocking vs Non Blocking

This is a library module. It provides no out of the box functionality other then providing an API that other modules/code can use. Other projects might require/recommend this module. Install HTTPRL only if other modules recommend or require it.

What does httprl do?

Using stream_select() it will send http requests out in parallel. These requests can be made in a blocking or non-blocking way. Blocking will wait for the http response; Non-Blocking will close the connection not waiting for the response back. The API for httprl is similar to the Drupal 7 version of drupal_http_request().

As a bonus, a simple threading library is built on top of the parallel http requests functionality. This allows you to split a job and have multiple http "workers" running this split job in parallel. Anything that takes a long time to do can greatly benefit from using threads.

Benchmarks

Downloads

Format Number API

number_format_settings.png

The Format Number API module provides a method to configure number formats (site default and user defined) with configurable decimal point and thousand separators.

This module also provides the 'numericfield' Forms API element, which is a right aligned text input element that allows the user enter numbers using the configured thousands separator and decimal point (site default or user defined). This Forms API element provides a validation callback that is used automatically and that ensures input is valid numeric as per the options defined for the element.

Several functions are exposed by the module that can be used by other contributed or custom modules to display numbers accordingly, from PHP and JavaScript as well. For further information, please see the README.txt.

Downloads

Boxes

Boxes module is a reimplementation of the custom blocks (boxes) that the core block module provides. It is a proof of concept for what a re-worked block module could do.

The module assumes that custom blocks are configuration, and not content. This means that it is a reasonable action to ask for all blocks at one time, this is in fact exactly what the core block module does.

Boxes provides an inline interface for editing blocks, allowing you to change the contents of blocks without going to an admin page.

Boxes provides exportables for its blocks via the (required) Chaos tools module. This allows modules to provide blocks in code that can be overwritten in the UI.

Chaos tools is required to use Boxes.

Boxes Integration

The following modules provide Boxes plugins. Let us know if your plugin is not listed here.

Spaces support

Downloads

Browscap

Browscap provides an improved version of PHP's get_browser() function.

The get_browser() function can be used to tell what a visitor's browser is capable of. Unfortunately, the version provided by PHP has a number of limitations, namely:

  • It can be difficult or impossible to configure for shared hosting environments.
  • The data used to identify browsers and determine their capabilities requires consistent maintenance to keep up-to-date.

Browscap automates maintenance by storing browser data in a database and automatically retrieving the latest data on a configurable schedule.

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

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

Content Analysis

Screenshot of Content Analysis

The Content Analysis module is an API designed to help modules that need to analyze content. The module enables a suite of content analyzers to provide multiple views into the content on your Drupal site or on any website. The current list of available analyzers are:

  • Quick SEO: Provides a quick and easy analysis of content to help your site rank better in the search engines for a specific keyword.
  • Scribe SEO: Provides advanced analysis of content to help your site rank better in the search engines. Also provides keyword extraction and guidance.
  • Readability: Grades content based on five popular automated readability tests for content
  • W3C Analyzer: Test content for W3C validation
  • Keyword Research: Provides an array of tools for analyzing and discovering keyword phrases. Also helps with tagging nodes with keywords.

Downloads

Fast Permissions Administration

Drupal 7

This module is here to alleviate frustration when trying to manage permissions in Drupal. By providing a better permissions interface hopefully a few innocent keyboards and mice can be saved.

All features work on all modern browsers and IE8+, unless otherwise noted.

Filtering:

The permissions page now provides a search field that will filter the permissions UI on-the-fly, allowing you to instantly find the permission that you are looking for.

You can also filter on the module a permission belongs to using the @ symbol:
permission@module

For example, if you want to show only permissions that contain the word admin for the comment module you would enter:
admin@comment

Quick module filter:

You can click on module names in the list to the left to instantly show only that module's permissions.

If you already have a filter value, it will apply that to the newly selected module.

New features in 7.x-2.6

Downloads

Custom Formatters

The Custom Formatters module allows users to easily create custom CCK/Field Formatters without the need to write a custom module. Custom Formatters can then be exported as CTools Exportables/Features or Drupal API Formatters.

Custom Formatters was written and is maintained by Stuart Clark (deciphered).
- http://stuar.tc/lark
- http://twitter.com/Decipher

 

Important note

Changes have been made to the PHP formatters Render Array integration to correctly support multi-field values, this changes the HTML wrappers of the formatter and may affect the theming of your site. This change will be made in 7.x-2.2 and the upcoming development releases.

 

Features:

  • Two different editor modes:
    • Basic/HTML + Tokens: A HTML based editor with Token support.
    • Advanced/PHP: A PHP based editor with support for multiple fields and multiple values.
  • Support for:
  • Exportable as:
    • Drupal API formatter
    • CTools exportable/Features
  • Live preview ([D6] requires Devel generate module).
  • Integrates with:
    • [D7] Coder Review module - Review your Custom Formatter code for Drupal coding standards and more
    • [D7] Drupal Contextual links module - Adds a hover link for quick editing of Custom Formatters.
    • Features module - Adds dependent Custom Formatters (from Views or Content types) to Feature.
    • [D7] Form Builder - Drag'n'Drop interface for builder Formatter Settings forms.
    • Insert module - Exposes Custom Formatters to the Insert module.
    • Libraries API module and the EditArea javascript library - Adds real-time syntax highlighting.

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

Pages