Drupal config API позволяет не только прочитать сами настройки, но и файлы их определений. В общем то это очевидно, покажу как это делается.
Допустим у нас есть файл с настройками (возьмем из пример из ядра друпал) /core/modules/comment/config/schema/comment.schema.yml
|
|
# Schema for the configuration files of the Comment module. comment.settings: type: config_object label: 'Comment settings' constraints: FullyValidatable: ~ mapping: log_ip_addresses: type: boolean label: 'Whether to log IP addresses with comments or not.' ... |
Значения конфигурации читаются следующим образом:
|
|
$config = \Drupal::config('comment.settings'); $log_ip_addresses = $config->get('log_ip_addresses'); |
В то время как описание из схемы извлекается, используя другой сервис друпала:
|
|
$schema = \Drupal::service('config.typed') ->getDefinition('comment.settings'); |
Переменная $schema будет представлять из себя структурированный массив, описывающий схему, которая была задана в yml файле.
Так можно извлечь все метаданные, вроде type, label и т.п.
Drupal 10/11
Данная запись опубликована в 06.04.2025 13:49 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 19, 2025 г.
При работе с таксономией в Drupal нередко возникает потребность отображать термины по-разному в зависимости от контекста. Например, один и тот же термин в режиме teaser должен выводиться компактно, а в режиме full — с подробным описанием.
Если вы используете ...
Читать
Март 13, 2025 г.
Если не хочется объявлять дополнительный регион, чтобы настроить вывод блока через админку, то можно сделать рендер блока программно.
Например добавим в препроцессинг страницы переменную с рендером блока branding. Этот блок предоставляется модулем ...
Читать
Апрель 24, 2025 г.
Чтобы через админку почистить длинные словари, нужно много времени, даже если вы используете bulk операции. Потому будем чистить их через код.
Разберем пример кода:
[crayon-69a6fe5ddcb8f368712847/]
Эти две команды удаляют все термины из словаря ...
Читать
Июль 21, 2025 г.
По умолчанию Drupal генерирует маршруты для каждого термина таксономии. Это означает, что у каждого термина появляется своя страница с URL вида /taxonomy/term/123. В некоторых случаях такие страницы могут быть полезны, например, если вы используете термины ...
Читать