¿Cuál es el módulo válido más básico que se puede crear en Drupal?
Sería útil tener un plan simple disponible, para cualquiera que recién esté comenzando con Drupal.
Las instrucciones a continuación le permiten a uno crear un módulo vacío, y es útil para cualquier persona que esté comenzando a construir módulos. Si tiene problemas para hacer funcionar su primer módulo, o incluso para aparecer en Drupal, asegúrese de haber leído todas las instrucciones a continuación.
Al project
menos debe tener
module-machine-name.info.yml
con los siguientes atributos:
name:
Un nombre legible por humanostype:
Un tipo que define ser a module
.core:
La versión principal principal de Drupal con la que el módulo es compatible 8.x
, en este caso.module-machine-name.module
Drupal busca módulos en estas ubicaciones, como se ve desde la raíz web:
/modules/
sites/[example.com]/modules
sites/default/modules
profiles/[install-profile]/modules
Técnicamente, Drupal también busca módulos core/modules
, pero uno nunca debe colocar módulos allí, por lo tanto, no está en la lista anterior.
Una estructura de módulo de ejemplo, para un módulo con el nombre de la máquina helloworld
, se vería así:
/modules/helloworld/helloworld.info.yml
/modules/helloworld/helloworld.module
Observe que tanto la información como el archivo del módulo tienen el mismo nombre que el nombre de la máquina, lo cual es importante.
El archivo del módulo puede estar vacío, pero el archivo de información debe contener algunos valores mínimos para que Drupal lo reconozca como un módulo. Para nuestro módulo helloworld, podría verse así:
name: 'Hello world module to demonstrate module building'
core: 8.x
type: module
Si sigue las instrucciones anteriores, debería poder obtener un nuevo módulo en su sitio de Drupal, aunque no hará nada, en esta etapa.
Un módulo debe tener al menos
Para que Drupal pueda cargarlo, también debe definir con qué versión principal es compatible.
Además, Drupal busca módulos en estas ubicaciones:
sites/all/modules/
sites/[example.com]/modules
sites/default/modules
profiles/[install-profile]/modules
Técnicamente, Drupal también busca módulos modules
, pero uno nunca debe colocar módulos allí, por lo tanto, no está en la lista.
Una estructura de módulo de ejemplo, para un módulo con el nombre de la máquina helloworld
, se vería así:
sites/all/modules/helloworld/helloworld.info
sites/all/modules/helloworld/helloworld.module
Observe que tanto la información como el archivo del módulo tienen el mismo nombre que el nombre de la máquina, lo cual es importante.
El archivo del módulo puede estar vacío, pero el archivo de información debe contener el nombre legible del módulo y la versión principal con la que el módulo es compatible.
Para nuestro módulo helloworld, podría verse así:
name = Hello world module to demonstrate module building
core = 7.x
Si sigue las instrucciones anteriores, debería poder obtener un nuevo módulo en su sitio de Drupal, aunque no hará nada, en esta etapa.
sites/default/...
solo diciendo ...drupal generate:module
?Para Drupal 8, dado que la pregunta mencionaba un plano, me imagino que mencionaría el proyecto Drupal Console .
Una vez que está instalado, uno puede generar código de módulo (y otras cosas como andamios para entidades personalizadas, complementos, etc.).
Para generar un módulo básico de la línea de comandos:
drupal generate:module
. Luego, se solicita una recopilación de información básica y se deja con los archivos del módulo al final:fuente