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

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

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

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

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

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

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

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

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

Май 12, 2025 г.

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

Читать

Drupal: как получить список target_id из ссылочного поля без перебора массива

Сентябрь 20, 2025 г.

При работе с сущностями в Drupal нередко возникает задача: из ссылочного поля (entity reference) нужно достать список ID связанных объектов. Например, у нас есть нода с полем field_other_exclusions. Если вывести его содержимое через getValue(), ...

Читать

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

Апрель 9, 2025 г.

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

Читать

Рендер произвольного блока в Drupal 11

Март 13, 2025 г.

Если не хочется объявлять дополнительный регион, чтобы настроить вывод блока через админку, то можно сделать рендер блока программно. Например добавим в препроцессинг страницы переменную с рендером блока branding. Этот блок предоставляется модулем ...

Читать
 

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

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



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