Как получить определения из конфигурационных файлов схем Drupal

Drupal config API позволяет не только прочитать сами настройки, но и файлы их определений. В общем то это очевидно, покажу как это делается.

Допустим у нас есть файл с настройками (возьмем из пример из ядра друпал) /core/modules/comment/config/schema/comment.schema.yml

Значения конфигурации читаются следующим образом:

В то время как описание из схемы извлекается, используя другой сервис друпала:

Переменная $schema будет представлять из себя структурированный массив, описывающий схему, которая была задана в yml файле.

Так можно извлечь все метаданные, вроде type, label и т.п.

Мало букафф? Читайте есчо !

Инициализируем кастомную тему в Drupal

Май 12, 2025 г.

При создании новой темы у вас есть варианты выбора начиная с того, чтобы взять готовую тему (и начать её менять под ваши задачи) до создания новой темы ...

Читать

Использование модального диалога в Drupal

Январь 13, 2026 г.

В комплекте Drupal включает в себя jquery dialog, который можно подключить и использовать для ваших целей на фронт-енд. Эта статья о том, как это быстро сделать и начать собственно использовать в своей теме оформления. Типичная тема представляет ...

Читать

Убираем вставку   в пустые div контейнеры в CKEditor 5

Апрель 9, 2025 г.

Неприятная особенность CKEditor - добавляет в пустые контейнера (в <div>,<p> и т.п.) html код неразрывного пробела. Покажу как можно от этого избавиться через код в кастомном плагине для CKEditor 5 в экосистеме Drupal 8+. Нам понадобится ...

Читать

Добавление произвольных требований при установке модуля в Drupal

Май 7, 2025 г.

Иногда модуль в Drupal требует наличия специфических сущностей или конфигураций, например — определённого текстового формата. Поскольку текстовые форматы являются конфигурационными сущностями (entities), напрямую указать их как зависимость в .info.yml ...

Читать
 

Комментарии к «Как получить определения из конфигурационных файлов схем Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: