A diferencia de los proyectos pequeños que no requieren programación y se pueden realizar completamente desde el dashboard del CMS (Wordpress, Drupal, etc.) existen otro tipo de proyectos que se benefician de tener parte del camino recorrido con Módulos/Plugins ya contribuidos y solamente dirigen el proyecto a todos los módulos y recursos personalizados que necesitan. Creeme, este tipo de proyectos son muy grandes, tanto a nivel presupuesto como exigencia, habilidades necesarias, etc.
Bajo la consigna antes mencionada, comenzaremos una serie de artículos para explicarte las bases para que puedas desarrollar módulos en Drupal 8.
Conocimientos necesarios
Para poder desarrollar módulos en Drupal 8 de manera correcta debes considerar tener buena base en los siguientes aspectos:
- PHP - Programación orientada a objetos
- Composer
- Tests unitarios
- YAML
- TWIG (En caso de manejar templates)
Mi primer módulo
Ingresando a la sección de módulos desde la barra de administración de Drupal puedes ver un listado de todos los módulos que tienes disponibles para utilizar en tu sitio, tanto los activados como los desactivados, adicionalmente te darás cuenta que vienen agrupados. Por ejemplo, los módulos del nucleo de Drupal están en el apartado Core.
Para que veas tu primer módulo creado en esta lista sólo se necesitan 2 pasos.
- Crear una carpeta con el nombre de tu módulo dentro de la carpeta
modules/custom
de la raíz de Drupal. Por ejemplo:mi\_modulo
(Si no tienes la carpeta custom sólo créala). - Crear un archivo YML llamado
mi\_modulo.info.yml
dentro de esa carpeta que acabas de crear con la siguiente información básica
1name: Mi primer módulo 2type: module 3description: Este es mi primer módulo en Drupal 4package: EDteam 5core: 8.x 6
Este archivo es sencillo, no necesita explicación adicional, sólo debes entender la notación de los archivos .yml que son parecidos, en parte, a un objeto literal de la siguiente manera:
1clave: valor
Después de crear este archivo vacía todas las cachés de Drupal.
Listo! Ya tienes tu primer módulo agregado a la lista de módulos disponibles. Incluso lo puedes activar.
Pero, ¿Qué hace este módulo? la respuesta es: Nada.
En el siguiente artículo aprenderemos algo más sobre este proceso y agregaremos algo de funcionalidad a nuestro módulo.
Es todo por esta ocasión. Nos vemos la siguiente semana con la continuación de esta interesante serie.