Reglas para nombrar y ubicar tu módulo de Drupal 8
Antes de empezar
Si quieres que PHP te ayude a detectar errores en el sitio de pruebas, prueba las configuraciones descritas aquí: Mostrar todos los errores durante el desarrollo.
Nombrar tu módulo
El primer paso para crear un módulo es elegir un "nombre corto" o nombre de máquina para él. Este nombre de máquina se usará en varios archivos y funciones de tu módulo, y el núcleo de Drupal lo utiliza programáticamente para referirse a tu módulo.
Hay varias reglas importantes que debes seguir al elegir el nombre de máquina:
- Debe comenzar con una letra.
- Debe contener solo letras minúsculas y guiones bajos.
- No debe contener espacios.
- Debe ser único. Tu módulo no debe tener el mismo nombre corto que cualquier otro módulo, tema o perfil de instalación que uses en el sitio.
- No debe usar términos reservados:
src
,lib
,vendor
,assets
,css
,files
,images
,js
,misc
,templates
,includes
,fixtures
,Drupal
En este caso, elegiremos “hello_world” como nombre de máquina.
Nota importante: no uses letras mayúsculas en el nombre de máquina de tu módulo, ya que Drupal no reconocerá tus implementaciones de hooks. Consulta Comprender el sistema de hooks para módulos Drupal.
Crea una carpeta para tu módulo
Dado que elegimos el nombre de máquina “hello_world”, crea el módulo creando una carpeta en tu instalación de Drupal en: /modules/custom/hello_world o /sites/all/modules/hello_world. Puedes omitir la subcarpeta /custom y colocar tu módulo en /modules/hello_world, pero a menudo es conveniente tener un lugar dedicado para tus propios módulos para no tener que buscarlos entre otros módulos descargados de Drupal.org.
Ten en cuenta que no es necesario que el nombre de la carpeta de tu módulo coincida con el nombre de máquina. Puedes usar, por ejemplo, la carpeta HelloWorld. Sin embargo, debes asegurarte de usar siempre el nombre de máquina programáticamente en el código y en los nombres de archivos de tu módulo.
Versiones anteriores de Drupal requerían que los módulos personalizados se ubicaran en /sites/all/modules, mientras que los módulos principales estaban en /modules. Sin embargo, en Drupal 8, /modules ahora está reservado para tus módulos personalizados y contribuidos. Todos los módulos principales y archivos de librerías ahora están en el directorio /core. En Drupal 8 todavía puedes seguir las mejores prácticas de Drupal 7/6 y ubicar tus módulos personalizados y contribuidos en /sites/all/modules, pero también puedes colocarlos directamente en /modules, con el mismo efecto.
Nuestro módulo de ejemplo aún no funciona; primero necesitaremos un archivo .info.yml. Aprende más sobre cómo informar a Drupal 8 sobre tu módulo con un archivo .info.yml. Activaremos el módulo más adelante en la guía.
Estándares de codificación
Recomendamos encarecidamente que sigas los estándares de codificación de Drupal al escribir tus propios módulos personalizados. Esto es un requisito para cualquier propuesta de cambio en el código del núcleo de Drupal, y una recomendación para el código alojado en drupal.org.
Consulta también
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.