Если не хочется объявлять дополнительный регион, чтобы настроить вывод блока через админку, то можно сделать рендер блока программно.
Например добавим в препроцессинг страницы переменную с рендером блока branding. Этот блок предоставляется модулем system.
|
|
/** * Implements theme_preprocess_page(). */ function MYTHEME_preprocess_page(&$vars): void { $block_manager = \Drupal::service('plugin.manager.block'); $block = $block_manager->createInstance('system_branding_block', []); $block_render = $block->build(); $vars['cmb_site_branding'] = \Drupal::service('renderer')->render($block_render); } |
Мы используем сервис plugin.manager.block для доступа к управлению блоками. А сервис renderer позволяет нам произвести рендер (это можно выполнить и в шаблоне).
Чтобы узнать какие блоки есть в наличии, можно запросить список их определений:
|
|
$definitions = $block_manager->getDefinitions(); print_r($definitions); |
Drupal 10/11
Данная запись опубликована в 13.03.2025 23:45 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Декабрь 23, 2025 г.
В этой статье мы рассмотрим, как добавить кнопку "Register" в форму авторизации в Drupal, которая будет перенаправлять пользователя на страницу регистрации. ...
Читать
Апрель 3, 2025 г.
Облачные файловые хранилища Яндекса можно подключить и использовать в вашем проекте на drupal через модуль s3fs. А именно, хранить там т.н. юзерфайлы, ...
Читать
Апрель 24, 2025 г.
Чтобы через админку почистить длинные словари, нужно много времени, даже если вы используете bulk операции. Потому будем чистить их через код.
Разберем пример кода:
[crayon-699c8172347a7315638685/]
Эти две команды удаляют все термины из словаря ...
Читать
Март 11, 2025 г.
В Drupal 10/11 поддержка Oembed провайдеров в ядре (модуль media) позволяет легко и непринуждённо читать данные о медиа прямо из провайдера.
Ранее я рассказывал как зарегистрировать oembed для rutube, чтобы иметь возможность оперировать видео контентом ...
Читать