Программно выводим блок в Drupal

Если вы решили вывести блок, реализованный в каком либо модуле, программно, то следующие  примеры кода помогут вам.

Используя block API

Запрашиваем данные блока через API, готовим массив для последующего рендеринга:

На этом этапе можно (если хотите) отключить стандартный wrapper блока, чтобы вывести только содержимое блока:

Остаётся только выполнить рендеринг:

Программный вывод блока, определенного через views

Если требуется вывести блок, определенный через модуль views, то можно использовать views API.

Вам нужно будет знать имя объекта views и имя отображения (display), т.к. в одном представлении может быть несколько отображений.

или в одну строку:

Здесь описано более подробно.

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

Вывод сообщений валидации формы рядом с формой

Март 20, 2019 г.

При возникновении ошибок, во время проверки формы друпал выполняет две вещи, которые отражаются на фронт-энд - добавляет сообщение об ошибке в стек сообщений и маркирует классом error поле, содержащее ошибку. Если форма находится далеко от места вывода ...

Читать

Вывод меню с фиксированной глубиной в Drupal

Март 25, 2019 г.

Блок меню core модуля menu позволяет вывести всю иерархию меню полностью, но иногда требуется показать только 1-2 верхних уровня. Посмотрим как организовать такой вывод. Drupal в модуле menu использует функцию menu_tree('ИМЯ МЕНЮ'), чтобы рендерить ...

Читать

Как получить текущий id node в drupal из кода программы?

Ноябрь 8, 2016 г.

Можно использовать анализ адреса хранимый Drupal в $_GET['q'] и/или анализ частей адреса, получаемых функцией arg(N). Оба варианта по сути делают одно и тоже - анализ внутреннего адреса, который для публикации имеет вид: node/%NID%. Я использую функцию ...

Читать

Отправка HTML писем из Drupal 7

Август 27, 2015 г.

В семерке поменяли кое что в плане отправки писем, и то что работало в 6ке, в 7ке уже «не катит». Разберем два аспекта отправки писем: HTML формат письма ...

Читать
 

Комментарии к «Программно выводим блок в Drupal»

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



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