Panels. Как пользоваться контекстами

Сегодня мы поговорим об контекстах и отношениях, которые предоставляет модуль Page Manager. Я покажу, как используя модуль Panels и контексты, формировать сложные страницы.

Поставим задачу: в типе материала "news" вывести в левой колонке имя и аватар текущего пользователя, в центральной колонке - новость, а в правой - имя и аватар автора новости.

И так, включаем страницу "Шаблон материала" на странице admin/structure/pages и создаем новый вариант (в форме выбора макета страницы выбираем макет с тремя колонками). О том как создать вариант страницы я уже писал и поэтому на этом не буду заострять внимания и перейду сразу к контекстам и наполнению страницы содержимым.

Шаг 1. Жмем в вертикальном меню варианта по ссылке Контексты, перед нами откроется страница с формой добавления контекстов и отношений, выбираем контекст "Пользователь" и жмем кнопку "Добавить контекст":

Шаг 1. Добавление контекста
Шаг 1. Добавление контекста

Откроется попап, в котором мы должны выбрать, какого пользователя добавить в контекст (можно добавить текущего пользователя или конкретного, введя его имя). Так как нам необходимо вывести аватар и имя текущего пользователя, то выбираем в форме Текущий пользователь и жмем кнопку "Готово":

Panels. Сохранение контекста
Panels. Сохранение контекста

Шаг 2. Далее выбираем отношение Пользователь from Материал (on node.node_author) и жмем кнопку "Добавить зависимость":

Шаг 2. Добвление отношения
Шаг 2. Добвление отношения

Перед нами откроется попап, ничего в нем не меняя жмем кнопку "Готово", затем под сводкой контекстов жмем кнопку "Обновить и сохранить":

Panels. Обновление и сохранение контекстов
Panels. Обновление и сохранение контекстов

Шаг 3. Жмем в вертикальном меню варианта по ссылке Содержимое, перед нами откроется уже знакомая форма "Содержимое панели". Сейчас добавим в левую колонку имя и аватар текущего пользователя. Жмем "Добавить содержимое", выбираем категорию User (tokens) и добавляем содержимое Имя. В открывшемся попапе выставляем настройки как на скриншоте и жмем кнопку "Готово":

Шаг 3. Добавление имени текущего пользователя
Шаг 3. Добавление имени текущего пользователя

Шаг 4. Жмем "Добавить содержимое", выбираем категорию Пользователь и добавляем содержимое Аватар пользователя. В открывшемся попапе выставляем настройки как на скриншоте и жмем кнопку "Готово":

Шаг 4. Добавление аватара текущего пользователя
Шаг 4. Добавление аватара текущего пользователя

Шаг 5. Теперь добавим в правую колонку имя и аватар автора новости. Делаем тоже, что и в шаге 3, только теперь в попапе выбираем Пользователь from Материал (on node.node_author):

Шаг 5. Добавление имени автора ноды
Шаг 5. Добавление имени автора ноды

Шаг 6. Аналогично и с аватаром пользователя, делаем тоже, что и в шаге 4, только в попапе выбираем Пользователь from Материал (on node.node_author):

Шаг 6. Добавление аватара автора новости
Шаг 6. Добавление аватара автора новости

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

Вот так можно выводить термины таксономии из просматриваемой ноды, связанные через References ноды и др.

Комментарии (0)