Не всегда удобно выводить блоки в определенные шаблоном регионы. Как вывести произвольный блок в нужном месте шаблона?
Для решения этой задачи пришлось не много покопаться в коде движка. Результатом копания стала вот такая функция:
|
|
/* рендеринг заданного блока */ function render_block($delta, $moduleName) { $render = _block_get_renderable_array(_block_render_blocks(array( block_load($moduleName, $delta) ))); $output = drupal_render($render); return $output; } |
Т.е. вам нужно знать системное название блока — параметр delta и системное название модуля — параметр moduleName, в котором реализован данный блок.
Данная запись опубликована в 12.07.2015 20:51 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 1, 2018 г.
Хоть CKEditor и позволяет редактировать тексты, но редакторов сложно приучить готовить их сразу на сайте. Потому первая ревизия текста обычно появляется ...
Читать
Ноябрь 6, 2025 г.
Понадобилось мне сгенерировать уникальный код, чтобы привязать уникальные стили к конкретному контейнеру. Функция random в twig чаще всего достаточна для этой цели. Но хотелось пойти немного дальше, и вытащить сервис генерации UUID.
Это нам приводит ...
Читать
Май 6, 2010 г.
Сейчас куда ни глянь, пошла мода в качестве имени при авторизации использовать не пресловутый login, а адрес электронной почты. И это действительно удобно. Адрес почты уникален для каждого пользователя, хорошо запоминается самим пользователем и не возникает ...
Читать
Январь 18, 2022 г.
То, что в семерке выполняется функцией drupal_html_class(), в Drupal 8 реализовано в виде статического метода\Drupal\Component\Utility\Html::getClass($str).
Данная функция также востребована в шаблонах (twig). Здесь вы можете использовать фильтр ...
Читать