Создание модуля в Drupal 8

Опубликовано: 08.10.2017

видео Создание модуля в Drupal 8

2.10 - Colorbox Создание простой фото галереи на Drupal 8

Друпал 8 имеет отличную от Друпал 7 архитектуру, поэтому процесс написания собственного модуля существенно отличается от принятого в прошлых версиях Друпал. Однако, не все так страшно. Пусть, название нашего модуля будет formatixsample.



Где разместить файлы модуля? Можно выбрать несколько мест: в каталоге /modules, в каталоге /sites/all/modules, либо, при мультисайтинговой конфигурации - в каталоге /sites/mysite/modules.

Мы добавим папку /modules/formatixsample (для ясности я буду всегда указывать абсолютные пути от корня), а в ней создадим файл описания модуля formatixsample.info.yml. Это файл в формате YAML , содержащий всю информацию о нашем модуле:


Drupal 8: Create a Simple Module

name : Пример модуля description : Описание нашего модуля package : Название группы модулей type : module version : 1.0 core : 8.x

Перейдем в раздел "расширить" и в списке обнаружим название нашего модуля:

Опишем системный путь, по которому мы сможем обратиться к нашему модулю. Теперь для этого служит отдельный файл formatixsample.routing.yml, определяющий путь, права доступа, заголовок и контроллер, генерирующий содержимое:

formatixsample.content : path : '/formatixsample' defaults : _controller : 'Drupal\formatixsample\Controller\FirstController::content' _title : 'Тра ля ля. Это наш модуль.' requirements : _permission : 'access content'

Мы указали путь /formatixsample, права доступа -  access content (доступ к содержимому - так же как к обычным материалам) и указали на наш контроллер, осуществляющий вывод.

Контроллер нужно поместить в папку /modules/formatixsample/src/Controller нашего модуля в файл FirstController.php. Регистр имен на сервере под управлением linux - важен!