Ответы:
Приведенные ниже инструкции позволяют создать пустой модуль и полезны для всех, кто только начинает работу по сборке модуля. Если у вас возникли проблемы с работой вашего первого модуля или даже с появлением в Drupal, убедитесь, что вы прочитали все инструкции ниже.
projectНеобходимо по крайней мере,
module-machine-name.info.ymlсо следующими атрибутами:
name: Человекочитаемое имяtype:Тип, определяющий быть module.core:В 8.xданном случае основная версия ядра Drupal, с которой совместим модуль .module-machine-name.moduleDrupal ищет модули в этих местах, как видно из корня сети:
/modules/sites/[example.com]/modulessites/default/modulesprofiles/[install-profile]/modulesТехнически, Drupal также ищет модули в core/modules, но один должен никогда , место модули там, следовательно , это не в списке выше.
Примерная структура модуля для модуля с именем машины helloworldбудет выглядеть следующим образом:
/modules/helloworld/helloworld.info.yml
/modules/helloworld/helloworld.module
Обратите внимание, что и информация, и файл модуля с таким же именем совпадают с именем машины, что важно.
Файл модуля может быть пустым, но информационный файл должен содержать несколько минимальных значений, чтобы Drupal распознал его как модуль. Для нашего модуля helloworld это может выглядеть так:
name: 'Hello world module to demonstrate module building'
core: 8.x
type: module
Если вы будете следовать приведенным выше инструкциям, вы сможете получить новый модуль в списке на своем сайте Drupal, хотя на этом этапе он ничего не будет делать.
Модуль должен по крайней мере иметь
Чтобы быть загружаемым Drupal, он также должен определить, с какой версией ядра он совместим.
Далее Drupal ищет модули в этих местах:
sites/all/modules/sites/[example.com]/modulessites/default/modulesprofiles/[install-profile]/modulesТехнически, Drupal также ищет модули в modules, но один должен никогда , место модули там, следовательно , это не в списке.
Примерная структура модуля для модуля с именем машины helloworldбудет выглядеть следующим образом:
sites/all/modules/helloworld/helloworld.info
sites/all/modules/helloworld/helloworld.module
Обратите внимание, что и информация, и файл модуля с таким же именем совпадают с именем машины, что важно.
Файл модуля может быть пустым, но информационный файл должен содержать удобочитаемое имя модуля и версию ядра, с которой он совместим.
Для нашего модуля helloworld это может выглядеть так:
name = Hello world module to demonstrate module building
core = 7.x
Если вы будете следовать приведенным выше инструкциям, вы сможете получить новый модуль в списке на своем сайте Drupal, хотя на этом этапе он ничего не будет делать.
drupal generate:module?
Для Drupal 8, поскольку в вопросе упоминается план, я полагаю, я бы упомянул проект консоли Drupal .
После того, как это установлено, можно сгенерировать код модуля (и другие вещи, такие как строительные леса для пользовательских объектов, плагинов и т. Д.).
Чтобы создать базовый модуль из командной строки: drupal generate:module. Затем один из них запрашивается через сбор некоторой базовой информации и остается с файлами модуля в конце:
sites/default/...просто говорю ...