Drupalbook.ru

12.9.1. Работа с конфигурациями в Drupal 8. Импорт контента и конфигурации.

7 августа 2019 в 19:09

Когда вы импортируете конфигурацию с одного сайта на другой, то некоторые конфиги нужны для вывода контента, но сам контент конфиги не содержат. В этом уроке мы разберем как переносить блоки, ноды и термины таксономии с одного сайта на другой.

12.9. Работа с конфигурациями в Drupal8. Active, Sync конфиги, перенос конфигов с DEV на LIVE.

7 августа 2019 в 19:00

Видео: https://youtu.be/C_lr0TazbrU

Конфигурация в Drupal 8 это основа всех настроек типов материалов, полей, конфигурационных форм и переменных. С помощью конфигурации мы можем переносить изменения с одного сайта на другой, разрабатывать таким образом разные фичи одновременно и не мешая друг другу.

12.8.2. Miltistep popup форма в Drupal 8.

7 августа 2019 в 18:56

В этой статье мы продолжим разбираться с Form API в Drupal 8 и сделаем multistep форму. Мы уже создавали обычную конфигурационную форму для модуля, multistep форма создается похожим способом с использованием $form_state для хранения данных между шагами формы.

Примеры кода можно посмотреть на github:
https://github.com/levmyshkin/drupalbook8

Для мультистеп формы нужно добавить класс формы:

/modules/custom/drupalbook/src/Form/MultiStepForm.php

12.8.1. hook_form_alter() добавляем submit и validate для существующей формы.

7 августа 2019 в 18:53

В одном из прошлых уроков мы разбирали что такое хуки, в этом уроке мы на практике поработаем с хуком hook_form_alter() и подобавляем функционал для уже существующей формы.

Примеры кода можно посмотреть на github:
https://github.com/levmyshkin/drupalbook8

Что такое хук и зачем он нужен можно почитать здесь:

http://drupalbook.ru/drupal/122-chto-takoe-hook-v-drupal-8

12.8. Работа с формами в Drupal 8. Добавляем форму администрирования.

7 августа 2019 в 18:46

Видео: https://youtu.be/Kufp_2Q8OpA

В этом уроке мы разберемся с Drupal 8 Form API и создадим форму настроек для модуля. Мы уже создали модули для вывода страницы и блока, давайте теперь создадим конфигурационную форму, в которой мы будем хранить данные для подключению к условному сервису. Допустим, что нам нужно хранить на сайте API Key и API Client ID, например для Google Maps API.

12.7. Плагины в Drupal 8. Выводим блок.

7 августа 2019 в 18:41

Видео: https://youtu.be/UtLpW_k9jlw

В этом уроке мы разберем как выводить блоки программно через кастомный модуль в Drupal 8.

Примеры кода можно посмотреть на github:
https://github.com/levmyshkin/drupalbook8

12.6. Роут с параметром.

7 августа 2019 в 18:34

Видео: https://youtu.be/uoIfbI-2Xoc

Мы можем использовать параметры в URL для роутов. Они работают также как contextual filters во Views. Мы можем например передавать в URL ID различных сущностей, текстовые строки или последовательной ID разделенных запятой или плюсами. В этом уроке мы будем передавать ID ноды и выводить title и body этой ноды в контенте.

Примеры кода можно посмотреть на github:
https://github.com/levmyshkin/drupalbook8

12.5. Основная документация по Drupal api.drupal.org. Как искать информацию по API Drupal.

7 августа 2019 в 18:30

По мере изучения Drupal API вам часто нужно будет обращаться к основной документации на https://api.drupal.org. Это автоматически сгененрированная документация по Drupal. В ней собрана вся информация о каждой функции, классе, методе, где они определены, где используются и краткое описание. Также на этом сайте есть справка по API, советую ознакомиться с каждым из разделов:

12.4. Создание страниц для premium аккаунта.

7 августа 2019 в 18:28

Видео: https://youtu.be/Iz9sRhGJ7vo

В этом уроке мы расширим возможности нашего модуля и создадим контент, который будет доступен только зарегистрированным пользователям или пользователям с определенной ролью.

Примеры кода можно посмотреть на github:

https://github.com/levmyshkin/drupalbook8

Начнем с добавления нового YML-файла прямо в папке нашего модуля drupalbook.permissions.yml:

12.3. Создаем кастомный Drupal 8 модуль. Вывод страницы программно.

7 августа 2019 в 18:22

Видео: https://youtu.be/ql9qK1bZIyA

Начнем создание нашего модуля с небольшого упорядочивания. Давайте впредь будем разделять модули кастомные и контрибные. В 8ом друпале модули лежат в папке /modules. Теперь нам не нужно класть их вглубь /sites/all/modules, хотя в readme написано, что это должно работать используйте все-таки папку /modules. Внутри папки /modules мы создадим две папки custom и contrib. В папке contrib будут храниться дополнительные модули с drupal.org, а в папке custom будут храниться наши кастомные модули.