Drupal (pronunciación IPA en inglés: [druː pʰʊɫ]) es un sistema de gestión de contenidos o CMS (por sus siglas en inglés, Content Management System) libre,[1] modular, multipropósito y altamente configurable.Permite la publicación de artículos, imágenes y archivos,además de ofrecer funcionalidades adicionales como foros, encuestas, votaciones, blogs, así como la gestión de usuarios y permisos. Drupal es un sistema dinámico: en lugar de almacenar los contenidos en archivos estáticos dentro del sistema de ficheros del servidor, guardar la información textual de las páginas y otras configuraciones en una base de datos, lo que permite su edición mediante un entorno Web.
Drupal | ||
---|---|---|
![]() | ||
Información general | ||
Tipo de programa | marco de referencia para aplicaciónes móviles web | |
Autor | Dries Buytaert | |
Desarrollador | Dries Buytaert | |
Modelo de desarrollo | Código abierto | |
Lanzamiento inicial | 1 de enero de 2001 | |
Licencia | GPLv2/GPLv3 | |
Estado actual | Activo | |
Información técnica | ||
Programado en | PHP | |
Plataformas admitidas | Symfony | |
Versiones | ||
Última versión estable | 11.1.78 de mayo de 2025 | |
Enlaces | ||
Sitio web oficial
Repositorio de código
| ||
Es un programa libre, distribuido bajo la licencia GNU/GPL, escrito en PHP, combinable con MySQL/PostgresQL/SQLite.Es desarrollado y mantenido por una activa comunidad de usuarios. Destaca por la calidad de su código, la solidez y de las páginas generadas, el respeto de los estándares de la web, y un énfasis particular en la usabilidad y consistencia de todo el sistema.
El diseño de Drupal es especialmente adecuado para construir y gestionar comunidades en Internet.Además, destaca por su flexibilidad y adaptabilidad, y la gran cantidad de módulos adicionales disponibles lo hace apropiado para desarrollar muchos tipos diferentes de sitios web.[2]
En marzo de 2022, la comunidad de Drupal contaba con más de 1,39 millones de miembros,[3][4] incluidos 124.000 usuarios que contribuían activamente.[5] Esto dio lugar a más de 48.300 módulos gratuitos que amplían y personalizan la funcionalidad de Drupa,[6] más de 3.000 temas gratuitos que modifican su apariencia de Drupal[7] y al menos 1.400 distribuciones gratuitas.[8]
Código abierto para grandes organizaciones
Drupal es la plataforma que utilizan muchos gobiernos para comunicar sus mensajes más importantes (Gobierno de la República Argentina, Bélgica, Francia, Nueva Zelanda, ….).
También es el framework detrás de contenidos de entretenimiento, como los (The GRAMMYs, Lady Gaga, Bruno Mars, Warner Bros., ...) así como de contenidos informativos (Fox News, The Weather Channel, NBC, Los Tiempos, France24, ...).
Drupal es también muy utilizado por importantes universidades (Harvard, Stanford, Oxford, UNAM, UNAH, UdG, ...) así como por grandes ONG’s (GreenPeace, la Cruz Roja, Oxfam, Amnesty, ...).
Experiencia digital para marcas poderosas
La flexibilidad de Drupal permite a importantes marcas internacionales ofrecer una experiencia digital de primer nivel a sus clientes, tanto en marketing de contenidos y gestión de marca digital como comercio electrónico. Por esta razón, empresas como Nike, Best Buy, General Electric, Puma, Alcatel-Lucent, Cisco, Verizon y Pinterest utilizan Drupal a lo largo de todo su proceso de comunicación digital y en sus soluciones de comercio electrónico.
Muy apreciado por los usuarios finales
Si bien la seguridad, el desempeño y la flexibilidad son elementos valorados por los administradores de sistemas y desarrolladores web, Drupal también es muy apreciado por los usuarios finales.visto que Drupal permite desde una interfaz gráfica web crear, actualizar y administrar páginas web de manera intuitiva aún para las personas que no programan. El software posibilita la publicación, gestión organizar de todo tipo de contenido (texto, imágenes, vídeos y audios) de forma segura y eficiente, permitiendo a los usuarios no técnicos administrar un sitio web,añadir menús o crear nuevas páginas de manera autónoma y dinámica.
Drupal es un gestor de contenidos multipropósito que puede utilizarse en diversas aplicaciones, por ejemplo:
En Drupal, sus funcionalidades pueden ampliarse mediante extensiones llamadas módulos, desarrolladas por su comunidad de usuarios. En 2023, la página oficial de Drupal listaba más de 50.800[10]módulos libres.
Existen tres tipos de módulos de Drupal, conocidos las "3 C":
Entre los más importantes[12]que no están incluidos en la distribución oficial, se pueden destacar:[13]
Drupal fue originalmente desarrollado por Dries Buytaert y es el software que impulsa sitios web como Debian Planet [14], Spread Firefox [15], Kernel Trap [16] y White House [17].
Aunque Drupal comenzó como un pequeño BBS, ha evolucionado hasta convertirse en más que un portal de noticias, gracias a su arquitectura flexible. Drupal se compone de una infraestructura base y un conjunto de módulos que proporcionan una amplia variedad de funciones, incluyendo sistemas de comercio electrónico, galerías de fotos, gestión de listas de correo electrónico, e integración de CVS. Además ,es posible añadir módulos de terceros para modificar su comportamiento u ofrecer nuevas funcionalidades.
Drupal se utiliza, entre otros ámbitos, en intranets corporativas, enseñanza en línea, comunidades artísticas y administración de proyectos. Muchos consideran que su relevancia dentro de las comunidades de usuarios es lo que lo distingue a la competencia.
Color | Significado |
---|---|
Rojo | Versión antigua sin soporte |
Verde | Versión actual |
Azul | Versión futura |
Versión | Fecha de lanzamiento | Notas |
---|---|---|
1.0 | 15 de enero de 2001[14] | |
2.0 | 15 de marzo de 2001[14] | |
3.0 | 15 de septiembre de 2001[14] | |
4.0 | 16 de junio de 2002[14] | |
4.7 | 16 de mayo de 2006[14] | |
5.0 | 15 de junio de 2007[15] | |
6.0 | 13 de febrero de 2008[16] | Fin de soporte 24 de febrero de 2016[17] |
Versión | Fecha de lanzamiento |
---|---|
7.0 | 5 de junio de 2011[18] |
7.98 | 7 de junio de 2023[19] |
Versión | Fecha de lanzamiento | |
---|---|---|
8.0.0 | 19 de noviembre de 2015[20] | |
8.9.20 | 17 de noviembre de 2021[21] | Fin de soporte 2 de noviembre de 2021[22] |
Versión | Fecha de lanzamiento | |
---|---|---|
9.0.0 | 3 de junio de 2020[23] | |
9.5.11 | 20 de septiembre de 2023[24] | Fin de soporte 1 de noviembre de 2023[25] |
Versión | Fecha de lanzamiento |
---|---|
10.0.0 | 15 de diciembre de 2022[26] |
10.1.6 | 1 de noviembre de 2023[27] |
El módulo (module) es un software que extiende las funcionalidades y características de Drupal. Cada versión de Drupal incluye módulos precargados, a los cuales se pueden añadir otros según las necesidades específicas del sitio y la funcionalidad requerida.
En Drupal ,cada visitante del sitio, ya sea que haya iniciado sesión o no (como visitante anónimo),se considera un Usuario.Los tipos de usuario se pueden definir desde el núcleo de Drupal en la sección Perfil (profile), junto con los campos asociados a cada usuario. Los Usuarios anónimos tienen el ID cero (0),mientras que los usuarios que han iniciado sesión reciben un ID distinto de 0. A estos usuarios se les asignan permisos mediante roles, pudiendo crear diferentes tipos de roles además de los preestablecidos por defecto y ajustar sus permisos según las necesidades del sitio. El usuario con ID 1 es el usuario administrador que posee todos los permisos del sistema.
El Nodo (node) es un término genérico que se utiliza para cada pieza de contenido dentro de un sitio Drupal. Algunos ejemplos de nodos incluyen páginas de libros, temas de discusión en foros, entradas en blogs, artículos, etc. Cada nodo corresponde a un tipo que posee un ID, un título, una fecha de creación, un autor, un cuerpo o body y otras propiedades.Además, dependiendo de los módulos adicionales que se que se estén utilizando, pueden agregarse más propiedades a cada nodo.
El Comentario (comment) es otro tipo de contenido en Drupal, ya que cada comentario constituye una pequeña pieza de información que un usuario envía a un nodo específico, por ejemplo, cada comentario dentro de una discusión en el foro es un comment asociado al nodo correspondiente.
La Taxonomía (taxonomy) es el sistema mediante el cual Drupal clasifica el contenido y constituye uno de los módulos del núcleo.Se pueden definir vocabularios, que son grupos de términos de taxonomía. Cada tipo de vocabulario puede asociarse a uno o varios tipos de contenido, permitiendo que los nodos del sitio se clasifiquen en categorías, etiquetas o cualquier otra agrupación que se desee.
La información de Drupal depende de la base de datos, y cada dato se almacena en una tabla específica. Por ejemplo, la información básica de los nodos se encuentra en la tabla de Node.
Drupal soporta diferentes tipos de bases de datos, como:
Cuando se visita un sitio con Drupal, una parte de la dirección de URL es conocida como path. Es la información enviada por el navegador a la base de datos. Si se está viendo la página http://drupal.org/node/16785 el path será "node/16785". Por defecto, luego de la instalación del sitio se proseguirá con "?q=". Pero con el sistema de URL limpias que se puede activar desde la administración se puede quitar ese atributo.
La Plantilla (theme) determina cómo se visualizará el sitio, incluyendo el diseño y los colores. Está compuesta por uno o más archivos en PHP que definen la salida HTML, junto con uno o más archivos en CSS que especifican fuentes, colores y otros estilos.
Drupal está organizado en Regiones (regions) que pueden incluir la cabecera, el pie, las barras laterales y la sección principal de contenido. Los Bloques (blocks) representan la información que se visualiza en estas regiones y pueden adoptar diversas formas, como menús (por ejemplo, el menú de navegación), visualizaciones de módulos (como los contenidos más vistos de un foro) o información estática o dinámica creada por un usuario (como eventos). Existen tres menús estándar en Drupal: Enlaces primarios, Enlaces secundarios y Menú de navegación. Los enlaces primarios y secundarios se construyen según el criterio de los administradores y se muestran automáticamente. Además, es posible crear menús personalizados mediante la creación de bloques.[28]
Un tipo de entidad (Entity types) es una abstracción utilizada para agrupar campos y estructura de datos en Drupal. se emplea para almacenar y mostrar información, y puede incluir nodos, comentarios, términos de taxonomía, perfiles de usuario o desarrollos personalizados.
Drupal 7 está basado en el patrón PAC Presentation Abstraction Control, en el cual cada agente posee capas independientes de presentación, abstracción y control. Los agentes heredan del controlador del agente precedente en orden jerárquico, lo que permite mantener la cohesión funcional entre múltiples capas de procesamiento representadas en módulos.
En Drupal 8 se incorporaron componentes de Symfony adoptando una arquitectura MVC - Modelo Vista Controlador e integrando el motor de plantillas Twig.
Los componentes de Symfony[29] integrados en Drupal 8 son:
Requisitos mínimos del sistema
En cuanto a la seguridad, se realizaron varias mejoras:se renovaron las tareas programadas como el cron.php, el sistema de ingreso de usuarios y la gestión de contraseñas, así como la actualización de los módulos. Se añadieron más tareas administrativas desplegables, y las tareas programadas del Cron ahora pueden ejecutarse desde la administración sin necesidad de scripts en el servidor web.Además, se rediseñó la fortaleza de la contraseña, entre otras mejoras de seguridad.
En la base de datos se incorporaron las operaciones INSERT, UPDATE, DELETE, MERGE, y SELECT, además de soporte para SQLite. Se incluyó la ayuda de las aplicaciones dentro del núcleo de Drupal. Se eliminaron las plantillas de Bluemarine, Chameleon y Pushbutton y se incorporan las nuevas llamadas Bartik para la vista de usuario, Seven para la administración y Stark.
Se actualiza el núcleo de JavaScript a jQuery 1.4.2, se actualizó la librería de jQuery a la versión 2.36 y se incorporó jQuery UI 1.8.[30]
Drupal 8 fue lanzado oficialmente el 19 de noviembre de 2015, tras cinco años de desarrollo en los que participaron más de 3300 colaboradores.
La versión fue lanzada el 5 de octubre de 2016 y cuenta con las siguientes novedades:
Algunas iniciativas oficiales llevadas a cabo en el desarrollo de Drupal incluyen:[33]
Base de datos:
PHP:
Para visualizar un sitio creado en Drupal (utilizando únicamente los módulos del núcleo y sin extensiones de terceros) es suficiente contar con cualquier navegador moderno que soporte CSS y JavaScript. Sin embargo, los navegadores implementan los estándares web en distintos niveles, lo que puede generar pequeñas diferencias en la visualización del sitio de uno a otro.
Los siguientes navegadores soportan todas las características de Drupal:
Drupal también puede funcionar en navegadores que no tengan JavaScript habilitado o que no soporten CSS; sin embargo, en estos casos el aspecto visual y la funcionalidad del sitio se verán limitados.
Una Distribución Drupal consiste en un paquete de diferentes módulos Drupal preconfigurados y/o modificados que proporcionan una solución a una necesidad específica. La principal ventaja de trabajar con distribuciones es la posibilidad de contar con una solución completa y funcional en poco tiempo, manteniendo la flexibilidad de Drupal para agregar nuevos módulos o reconfigurar los existentes. Las distribuciones más conocidas son:
Drupal Starshot fue una iniciativa de la comunidad de Drupal, presentada en 2023, con el objetivo de simplificar la experiencia de instalación y uso inicial del sistema de gestión de contenidos. Esta propuesta buscaba ofrecer una versión más accesible, con configuraciones predeterminadas y herramientas listas para usar, reduciendo la complejidad para nuevos usuarios y equipos sin experiencia técnica avanzada.
La iniciativa surgió como respuesta a una percepción generalizada: aunque Drupal era reconocido por su flexibilidad y potencia, su curva de aprendizaje y la necesidad de configuraciones iniciales limitaban su adopción frente a otros sistemas. Starshot buscó equilibrar la robustez del núcleo con una experiencia de usuario más inmediata.[34]
Con el tiempo, varias de las ideas y mejoras experimentadas en Starshot se incorporaron al núcleo del proyecto Drupal. Esto dio lugar a la evolución hacia lo que se denominó Drupal CMS, un enfoque que conservó la filosofía de software libre y la modularidad característica del proyecto, pero con una orientación más práctica y lista para su implementación en proyectos reales.[34]
Drupal CMS, a diferencia de las versiones anteriores, ofreció una experiencia más cercana a un producto terminado, con énfasis en usabilidad, accesibilidad y rapidez de despliegue. Gracias a esta transición, el sistema reforzó su posición como una plataforma competitiva en el ecosistema de gestión de contenidos, integrando tanto las necesidades de grandes organizaciones como de pequeños equipos.[34]
El proyecto de recetas dentro de Drupal CMS surgió como parte de la iniciativa Starshot, con el objetivo de simplificar la construcción de sitios web y reemplazar las distribuciones tradicionales de Drupal. Las recetas están formadas por conjuntos preconfigurados de módulos, tipos de contenido, vistas y páginas, diseñados para activarse de manera inmediata, sin necesidad de realizar configuraciones manuales complejas.[34]
Conferencia Drupal CMS 15012025
A diferencia de los módulos, que están orientados principalmente al código, las recetas se centran en la configuración lista para usar, proporcionando a editores y administradores una forma más ágil de implementar funcionalidades específicas. Cada receta responde a un caso de uso concreto, como la creación de un blog, la gestión de eventos o el lanzamiento de campañas de marketing.[34]
En la práctica, al habilitar una receta, el sistema genera automáticamente todos los elementos necesarios —desde estructuras de contenido hasta páginas de resultados—, lo que reduce la curva de aprendizaje y acelera el despliegue de nuevos proyectos. Con esta estrategia, Drupal CMS busca democratizar el acceso a la plataforma, facilitando su adopción por usuarios sin experiencia.[34]
El proyecto de recetas constituye uno de los pilares de Drupal CMS, ya que consolida la visión de ofrecer un sistema de gestión de contenidos más accesible, flexible y alineado con las necesidades actuales de creación digital.[34]