Drupal Top 25+ Modules

nickvidal's picture

English / Castellano

Overview of Drupal's Top 25+ Modules
Author: Nick Vidal

One of Drupal's key features is its extensibility. There are over 10.000 modules to extend Drupal's core. Drupal has a strong international community and many developers contribute with free and open source modules that anyone can download, study, modify, and contribute back. This high number of modules often is overwhelming to newcomers and even experienced site builders, who have a hard time finding and selecting the right modules for their projects. This article highlights some of the current top modules organized by categories.

Fields

  • Link: for adding a link, with validation.
  • Email: for adding an email, with validation.
  • Date: for adding a start and/or end date, including time.
  • Addressfield: for adding a complete address, including country, state, city, and zip code.
  • Entity Reference: allows to reference other entities (content, user, etc). This is useful when you want to create a relationship between entities. For example: Album and Music.
  • Prepopulate Entity Reference: by passing a parameter to the URL, it prepopulates a form. For example, a “Create Music” button associated with a specific Album can prepopulate the create form with that Album reference.
  • Field Validation: adds all kinds of validation to fields. For example: minimum and maximum value.
  • Autonode Title: title is an obligatory field, but for some content types it doesn't make sense, so this modules helps create an automatic title based on a pattern, such as user ID and current time for example.
  • Multiupload Imagefield Widget [Multiupload Filefield Widget]: allows to upload multiple images simultaneously.

Views

  • Views [Ctools]: for creating all sorts of lists, given some filters, and presented in a variety of ways (table, unformatted list, etc). For example: a table of Albums with cover photos.
  • Views Slideshow: allows you to create a slideshow from the list. For example: a slideshow of Album covers.
  • Views Accordion: if the list is big and categorized, it allows you to create an accordion with each category as a tab.
  • VBO (Views Bulk Operations): some actions might be applied to each entry in a list. This module allows to select several entries at the same time to apply a specific action. For example: delete these Albuns.
  • EVA (Entity Views Attachement): allows to add a views to any entity. For example: a list of Orders to an Album.

Internationalization

  • i18n [Variable]: a set of modules to help with internationalization. For example: to translate menus, blocks, taxonomy terms.
  • Language Icons: creates a block with country flags to allow users to set the site's language.
  • Transliteration: converts file names with special characters (accents, spaces, etc) to US-ASCII.

User Interface

  • Libraries: organizes the use of JavaScript libraries. See below for some examples.
  • Superfish: creates a drop-down menu.
  • CKEditor: provides a rich editor for the long text field.
  • Colorbox: creates an overlay and/or slideshow for images.
  • Jplayer: provides a video and audio player using either Flash or HTML5.
  • Fivestar [Voting API]: allows users to give stars (vote) for a content.

Miscellaneous

  • Pathauto [Token]: Creates paths automatically. For example: blog entries with dates and title as part of the path.
  • Rules [Entity]: Allows to create special rules for entities. Integrates well with Views through VBO (Views Bulk Operations).
  • Recaptcha [Captcha]: protects forms from SPAM by presenting an anti-bot challenge.
  • Backup & Migrate: backup the Drupal database directly from the web user interface.
  • Flag: allows users to 'mark' a node.
  • Redirect 403 to User Login: redirects to user login on pages with access denied.

Castellano / English

Módulos Drupal Destacados
Traducido al Castellano por @develCuy

Una de las funcionalidades claves de Drupal es su extensibilidad. Hay 10,000 módulos para extender Drupal, el cual tiene una fuerte comunidad internacional y muchos desarrolladores contribuyen módulos libres y de código abierto, que cualquier persona puede descargar, estudiar, modificar o contribuir de vuelta. Este alto número de módulos es usualmente abrumador para novatos y aún para site builders experimentados, haciendo difícil encontrar y seleccionar los módulos correctos parar sus proyectos. Este artículo resalta algunos de los actuales módulos destacados, organizados por categorías.

Fields (Campos)

  • Link: para agregar un enlace con validación.
  • Email: para agregar un email, con validación.
  • Date: para agregar una fecha de inicio y/o final, incluyendo la hora.
  • Addressfield: para agregar una dirección completa, incluyendo: país, estado, ciudad y código postal.
  • Entity Reference: permite hacer referencia a otras entidades (contenido, usuario, etc.). Esto es útil cuando desee crear una relación entre entidades. Por ejemplo: Álbum y Música.
  • Prepopulate Entity Reference: al pasarle un parámetro en la URL, prepopula un formulario. Por ejemplo, un botón “Crear Música” asociado con un Álbum específico, puede prepopular el formulario de creación con una referencia a ese Álbum.
  • Field Validation: agrega todo tipo de validaciones a los campos. Por ejemplo: valor mínimo y máximo.
  • Autonode Title: el título es un campo obligatorio, pero para algunos tipos de contenido esto no tiene sentido, así que este módulo ayuda a crear un título automático basado en un patrón, tal como el ID del usuario y la hora actual por ejemplo.
  • Multiupload Imagefield Widget [Multiupload Filefield Widget]: permite subir varias imágenes al mismo tiempo.

Views (Vistas)

  • Views [Ctools]: para crear todo tipo de listas, dando algunos filtros, y presentado una variedad de formatos (tabla, lista sin formato, etc). Por ejemplo: una tabla de Álbumes con fotos de portada.
  • Views Slideshow: permite crear un slideshow a partir de un listado. Por ejemplo: un slideshow con las portadas de un Álbum.
  • Views Accordion: si el listado es grande y categorizado, este permite crear un acordeón con cada categoría como un tab.
  • VBO (Views Bulk Operations): algunas acciones se pueden aplicar a cada entrada de lista. Este módulo permite seleccionar muchas entradas al mismo tiempo para aplicar acciones específicas. Por ejemplo: borrar estos Álbumes.
  • EVA (Entity Views Attachement): permite agregar una vista a cualquier entidad. Por ejemplo: un listado de Órdenes a un Álbum.

Internationalization (Internacionalización)

  • i18n [Variable]: un conjunto de módulos para ayudar con la internacionalización. Por ejemplo: traducir menús, bloques, términos de taxonomías.
  • Language Icons: crea un bloque con banderas de países para permitir que los usuarios escojan el idioma del sitio.
  • Transliteration: convierte los nombres de archivos con caracteres especiales (acentos, espacios, etc) a US-ASCII.

User Interface (Interfaz de Usuario)

  • Libraries: organiza el uso de librerías JavaScript. Verá algunos ejemplos a continuación.
  • Superfish: crea un menú desplegable.
  • CKEditor: provee un editor de texto enriquecido para campos de texto largos.
  • Colorbox: crea un overlay y/o slideshow para imágenes.
  • Jplayer: provee un reproductor de video y audio usando ya sea Flash o HTML5.
  • Fivestar [Voting API]: permite a los usuarios dar estrellas (votar) para un contenido.

Miscelanea

  • Pathauto [Token]: crea rutas automáticamente. Por ejemplo: entradas de blog con fechas y título como parte de la ruta.
  • Rules [Entity]: permite crear reglas especiales para entidades. Se integra bien con Views a través de VBO (Views Bulk Operations).
  • Recaptcha [Captcha]: proteje los formularios contra el SPAM, presentando un reto anti-robots.
  • Backup & Migrate: hace un backup de la base de datos de Drupal, directamente desde la interfaz de usuario.
  • Flag: permite a los usuarios 'marcar' un contenido.
  • Redirect 403 to User Login: va a iniciar sesión en las páginas con acceso denegado.

Comments

Case Study

nickvidal's picture

This list is based on my 5 years experience with Drupal.

I used all of these modules in my latest project for Itaipu. Please see the case study here:

http://groups.drupal.org/node/263833

Suggestions and Comments

nickvidal's picture

For those who want to give additional suggestions of 'Essential Modules', please do so below. Thanks!

I think that list is pretty

jackbravo's picture

I think that list is pretty pretty close to what I use also most of the time.

Right now we are trying changing views_slideshow for field_slideshow+field_collection, because I like more the end user interface to edit slideshows that way. I also like rotating banner interface more, but since it doesn't use latest media module and has quite a few bugs AND I don't like introducing the big media module just because of a slideshow, we end up using this other solution.

Another module that I use almost always on at least a few pages (not for all pages, but just a few) is panels. I really like its flexibility and page-building capabilities. So instead of context we use panels for complex layouts. But must of the time we use just blocks.

Two other modules that are more to facilitate working with drupal than to build the site and that I ALWAYS use are devel and admin_menu.

And that's pretty much it.

Great list Nick!

DraggableViews

KarimB's picture

Hi @jackbravo !

Here, to get a nice interface to views_slideshow we use http://drupal.org/project/draggableviews witch is pretty simple. So the end user has a drag and drop interface to re order his slideshow.

BTW, great list Nick!!!!

I would point out 3 things I use everyday in my Drupal live: Drush + features + rules

Cheers !

Drush + Features + Rules

nickvidal's picture

Hi Karim,

Rules I enjoy very much and use extensively. That's already on the list!

Drush and Features, however, I haven't played much for a long time. Perhaps I should come back to these to see what I'm missing! :)

Thanks for the tip!

Kind regards,
Nick

Nick, take a very good look

joelwallis's picture

Nick, take a very good look in the Features and Strongarm module. Today I don't see myself drupalizing without Features Driven Development. It's so much cool that I can't drop it anymore.

Features vs Apps

nickvidal's picture

I definitely can see the value of Features, specially when sharing code between different sites (or development stages) with some features enabled/disabled. But how does Features compare to Apps? And how do they all fit in the Configuration Management Initiative?

Every minute you spend

moskito's picture

Every minute you spend learning drush, you save at least 10 when you use it to do what you have to do.

Try to update a module in 200 sites without drush!

Even in simple situations like download and install a module it can be very useful. Don't need to worry about security issues in setting up a ftp just for it or wast time downloading and unpacking a module manually.

Panels vs Context vs Blocks

nickvidal's picture

Hi Joaquin,

About Panels (and Context), I think it's a valid suggestion! Thanks! There is also the Display Suite.

I recommend this article that discuss Panels vs Context vs Blocks:

http://www.leveltendesign.com/blog/randall-knutson/how-i-learned-stop-wo...

Regards,
Nick

Brasil

Group organizers

Group categories

Group events

Add to calendar

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: