You are not logged in. Please login to comment or vote.


A list of the best Drupal modules

There are so many Drupal modules, which ones do people use the most?

jQuery Update


Upgrades the version of jQuery in Drupal core to a newer version of jQuery.

Search API


This module provides a framework for easily creating searches on any entity known to Drupal, using any kind of search engine. For site administrators, it is a great alternative to other search solutions, since it already incorporates facetting support and the ability to use the Views module for displaying search results, filters, etc. Also, with the Apache Solr integration, a high-performance search engine is available for this module. Developers, on the other hand, will be impressed by the large flexibility and numerous ways of extension the module provides. Hence, the growing number of additional contrib modules, providing additional functionality or helping users customize some aspects of the search process. The prime example of a site using this module is itself – the Search API, along with the database backend and Views, is used to generate the issue queue listings.

PHP Error


Error reporting done right! Better error messages, full syntax highlighting, code snippets and works for AJAX too! Requirements PHP 5.3+ PHP Error Library Installation Download the php_error module Place it in the folder /sites/all/modules of your Drupal site. Download/save the PHP Error Library, it's just one file. Create the folder php_error in /sites/all/libraries and place/save the php_error.php library file in it (the full path should look like /sites/all/libraries/php_error/php_error.php). Enable the PHP Error module at /admin/modules Configure the PHP Error module at /admin/config/development/php_error Features Errors displayed in the browser for normal and AJAX requests. AJAX requests are paused, allowing you to automatically re-run them. Makes errors as strict as possible (encourages code quality, and tends to improve performance). Code snippets across the whole stack trace.

Libraries API


The common denominator for all Drupal modules/profiles/themes that integrate with external libraries. This module introduces a common repository for libraries in sites/all/libraries resp. sites//libraries for contributed modules. External libraries Denotes libraries ("plugins") that are neither shipped nor packaged with a project on We do not want to host third-party libraries on for a multitude of reasons, starting with licensing, proceeding to different release cycles, and not necessarily ending with fatal errors due to conflicts of having the same library installed in multiple versions. Drupal 7 only has built-in support for non-external libraries via hook_library(). But it is only suitable for projects that bundle their own library; i.e., the module author is the creator and vendor of the library. Libraries API should be used for externally developed and distributed libraries. A simple example would be a third-party jQuery plugin.

Hide PHP Fatal Error


This module simply redirects the user to an error page when a PHP fatal error is thrown. The error page is configurable. The error is logged using watchdog.



Flag is a flexible flagging system that is completely customizable by the administrator. Using this module, the site administrator can provide any number of flags for nodes, comments, users, and any other type of entity. Some possibilities include bookmarks, marking important, friends, or flag as offensive. With extensive views integration, you can create custom lists of popular content or keep tabs on important content. Flags may be per-user, meaning that each user can mark an item individually, or global, meaning that the item is either marked or it is not marked, and any user who changes that changes it for everyone. In this way, additional flags (similar to published and sticky) can be put on nodes, or other items, and dealt with by the system however the administration likes.



examples - Mirror of provided by

Entity API


This module extends the entity API of Drupal core in order to provide a unified way to deal with entities and their properties. Additionally, it provides an entity CRUD controller, which helps simplifying the creation of new entity types. Requirements Drupal 7.2 or later; suggested Drupal >= 7.15 Documentation You can find documentation in the handbooks. Also check the README and the provided API docs in entity.api.php. Overview For site-builders This is an API module, so it doesn't provide any end-user features. However, it provides some entity generic functionality to other modules that site-builders may leverage: A Views display plugin and field to render or link to any entity (by view-mode) A CTools content plugin to render any entity (by view-mode)

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.

Composer Manager


Composer Manager allows contributed modules to depend on PHP libraries managed via Composer.

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.

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.