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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 9, 2025 г.
На сайте всегда (или почти всегда) возникает задача управления настройками вроде телефон, email, какие то текстовые элементы, вроде копирайта, адрес организации и т.п.
С точки зрения данных - требуется объект в терминах шаблонов проектирования - синглтон. ...
Читать
Сентябрь 12, 2025 г.
В Drupal контроллеры чаще всего возвращают Renderable-массивы. Такие массивы автоматически проходят через систему рендеринга и подставляются в базовый шаблон темы (page.html.twig). Но иногда бывает нужно получить полный Response с темизацией вручную — ...
Читать
Август 8, 2025 г.
В Drupal 10/11 при работе с шаблонами Twig часто требуется вывести дату в нужном формате — будь то текущая дата, дата из поля сущности или timestamp. Для этого можно использовать стандартный Twig-фильтр date, а также функцию format_date().
В этой статье ...
Читать
Июль 21, 2025 г.
По умолчанию Drupal генерирует маршруты для каждого термина таксономии. Это означает, что у каждого термина появляется своя страница с URL вида /taxonomy/term/123. В некоторых случаях такие страницы могут быть полезны, например, если вы используете термины ...
Читать