2.6. Block - Регионы и блоки

Главные вкладки

levmyshkin 5 июля 2019 в 14:57

В друпал 8 как и в прошлых версиях можно вывести дополнительные блоки в регионах. Обычно в темах оформления друпал есть регионы: шапка, левый и правый сайдбар, центральный и подвал сайта. Давайте зайдем на страницу Меню - Структура - Блоки. В теме Bartik у нас следующие регионы:

Заголовок
Справка
Закреплено
Популярные
Содержимое
Первая боковая панель
Вторая боковая панель
Первый триптих
Триптих в середине
Последний триптих
Подвал первая колонка
Подвал вторая колонка
Подвал третья колонка
Подвал четвертая колонка
Подвал

Видео:
https://www.youtube.com/watch?v=AeK9tHEWMaY

Вы можете вывести блоки указанные ниже, в любой из этих регионов, например можно вывести блок кто сейчас на сайте в правый сайдбар:

блок сейчас на сайте

Выбираем регион Вторая боковая панель (сайдбар):

редактирование блока

Таким образом у нас получится трехколонночный макет:

трехколонночный макет

Мы можем сделать и двухколоночный макет с правым сайдбаром (возможно в целях SEO), для этого нужно просто перенести все блоки из первого сайдбара во второй:

двухколонночный макет

Тогда у нас будет такой вид:

второй сайдбар

Я думаю с блоками и регионами, все достаточно понятно, давайте посмотрим на Параметры видимости блока, он есть у каждого блока. Иногда нужно чтобы блок показывался только модератору, например блок для добавления материала, тогда мы заходим во вкладку роли и выбираем каким ролям отображать блок:

параметры видимости

Также мы можем показывать блоки на отдельно выбранных страницах типов материалов. Давайте добавим блок Последние материалы.

блок материалов

Добавляем вывод только на страницах статей, таким образом блок последних материалов не будет выведен ни на главной, ни на страницах тегов, ни на страницах других типов материалов, только на страницах тегов.

drupal параметры блока

Если нам нужно вывести блок на всех страницах кроме главной, то нужно использовать первую вкладку Параметров видимости блока. Давайте выведем блок Последние комментарии на всех страницах кроме главной:

блок на главной

Мы используем , чтобы вывести блок на всех страницах кроме главной, а если наоборот нужно блок вывести только на главной, то просто поставьте галочку На перечисленных страницах. Также мы можем использовать знак *, чтобы выводить на всех страницах, где вместо звездочки можно что-то подставить, например node/* - это страницы нод, taxonomy/term/* - страницы терминов таксономии, user/* - страницы пользователей. Если нужно записать несколько условий, то пишем условие на отдельной строке:

условия видимости

Также можно совмещать условия из Страницы, Ролей и Типов содержимого, например можно показывать блок только на страницах статей и только модераторам.

С блоками пока все, дальше мы будем создавать блоки с помощью модуля Views, а пока можете переходить к следующему уроку.