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.
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.
This module provide single sign-on capability for your Drupal site by implementing the CAS protocol. CAS has quickly become the most popular single sign-on solution for universities. In its most simple use (CAS can also proxy single sign-on), a CAS server authenticates users and sends the user to the requested application (your Drupal site) with a special ticket.
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:
The Page Plugin is a social plugin that enables Facebook Page owners to attract and gain Likes from their own website. The Like Box enables users to:
See how many users already like this Page, and which of their friends like it too
Read recent posts from the Page
Like the Page with one click, without having to actually visit the page
This simple module provides a block to integrate this plugin into Drupal, and allows users with 'administer blocks' permission to configure the different attributes provided by Facebook in the block configuration.
Panels Everywhere is an advanced method to completely do away with Drupal's restrictive blocks system and instead use the much more freeing Panels Layout system to control how your pages look. Panels Everywhere modifies the page as it is being rendered to 'wrap' the content in a display and can even take over your page theme to do away with the need for a page.tpl.php.
Doing this requires that you set up a few things properly, because Drupal is not really designed for this kind of behavior. Be sure to read the README before trying to use this module.
Gives a site owner options to disable specific messages shown to end users. The core drupal message system as offered by drupal_set_message is an excellent way for modules to send out messages to the end users. However not all drupal site owners are keen to show all the messages sent out by drupal core and all modules to their users. This module gives site administrators a reasonably powerful way to filter out messages shown to the end users.
This module simplifies the core Menu and Shortcut modules by merging the "List links" and "Edit menu" operations into a single administration page.
If you've ever accidentally clicked "Edit menu" hoping to edit the most important part of a menu (its links) but then found that all you could do from that page was edit the menu's name and description instead, this module is for you. What it does for the time being is get rid of the "List links" terminology altogether and consolidate everything under the "Edit menu" page, where most people will naturally look for it.
The Custom Formatters module allows users to easily create custom Field Formatters without the need to write a custom module. Custom Formatters can then be exported as CTools Exportables, Features or Drupal API Field Formatters.
Pluggable editor/renderer engines:
Create simple formatters from existing formatters with preset formatter settings.
HTML + Tokens
A HTML based editor with Token support.
A PHP based editor with support for multiple fields and multiple values.
A Twig based editor provided by the Twig filter module.
Supports for all fieldable entities, including but not limited to:
Drupal core - Comment, Node, Taxonomy term and User entities.
Field collection module - Field-collection item entity.
Media module - Media entity.
Drupal API formatter via:
Custom Formatters export interface.
CTools exportable via:
Custom Formatters export interface.
CTools Bulk Export module.
Live preview using real entities or Devel Generate.
Review your Custom Formatter code for Drupal coding standards and more.
Contextual links(Drupal core)
Adds a hover link for quick editing of Custom Formatters.
Format Display Suite fields.
Adds dependent Custom Formatters (from Views or Content types) to Feature.
Drag'n'Drop interface for builder Formatter Settings forms.
Exposes Custom Formatters to the Insert module.
Adds real-time syntax highlighting.
Adds the Token tree browser to the HTML + Tokens engine.
First there were modules, then there were Features, and now there are Apps. Apps is the next generation of extensibility and interoperability for Drupal. They provide a much better user experience of extending your Drupal site by providing facilities to download modules and all of their dependencies in one easy step.
You can hear more about Apps at the following Drupalcon Presentations
Modernizr tests which native CSS3 and HTML5 features are available in each browser and makes the results available to you in two ways: as properties on a global Modernizr object, and as classes on the <html> element. This information allows you to progressively enhance your pages with a granular level of control over the experience.
This Drupal module provides deep integration with the Modernizr JS library, allowing other modules or themes to register tests, load additional assets as needed, and even create new copies of the Modernizr library when a website's requirements change. Read more below.
This module allows you to create arbitrary Workflows, and assign them to Entities.
Workflows are made up of workflow states. Transitions between states can be allowed per role. For example, a workflow with the states Draft, Review, and Published could be assigned to the Story node type. Only users with role 'chief editor' can set Stories to the published state.
You can set up the Workflow to alter states from form, page, comment, a special block, and a special workflow tab.
Additionally, the submodule Workflow Access allows you to manage view/edit/delete permissions for content types per User role and Workflow state.
This module adds the ability for site admins to add "Markup" widgets to the form. These essentially let designers of cck content-types insert additional markup into the node/edit form to display to content-authors. This is the equivalent of adding additional elements to $form of the type '#markup'.
The module does not add anything to the $node object for the content being created, and utilizes form_alter to remove unnecessary fields from the '_content_admin_field' form when this widget is being created.
This module will help you to keep sane while working on your different environments by adding a configurable color bar to each one of your environments. The Environment Indicator adds a coloured bar on the site informing you which environment you're currently in (Development, Staging, Production, etc.). This is incredibly useful if you have multiple environments for each of your sites, and like me, are prone to forgetting which version of the site you are currently looking at.
This module can help you avoid making configuration changes to your live server by mistake by adding a coloured strip to the side of your site, clearly marking each version of the site.