Page Manager. Введение

Не так давно я в полной мере начал собирать сложные сайты на связке Page Manager, Views и Panels. Почему только сложные сайты, а не все? Потому что, если необходимо собрать простенький сайт, то быстрее будет "по старинке", а вот собирать сайты, которые имеют сложную структуру, быстрее и проще на связке модулей, которые я перечислил выше.

Первый свой урок я решил начать с Page Manager (входит в состав Ctools). В качестве примера сделаем следующий функционал: разрешим анонимным пользователям просматривать только новости. В правах доступа есть разрешение на просмотр опубликованного контента, но это доступ ко всему контенту на сайте. В решении задачи нам и поможет Page Manager.

Шаг 1. Первым делом включаем модуль, если вы это еще не сделали. Идем на страницу admin/structure/pages и видим там таблицу с доступными нам страницами. Нас интересует страница Шаблон материала, жмем кнопку "Включить" напротив:

Шаг 1. Включение страницы
Шаг 1. Включение страницы

Шаг 2. После включения текст кнопки "Включить" поменяется на "Редактировать", жмем эту кнопку, в открывшейся странице нажимаем "Добавить вариант":

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

Шаг 3. Перед вами откроется форма создания варианта:

Шаг 3. Создание варианта
Шаг 3. Создание варианта

Шаг 4. Здесь:

  • Заголовок - это название варианта, которое отображается в списке всех вариантов страницы;
  • Тип варианта - на данный момент он у нас один, если установить модуль Panels, то добавиться тип варианта "Панель";
  • Правила выбора - условия, при выполнении которых будет выбран вариант.

Жмем "Создать вариант":

Шаг 4. Создать вариант
Шаг 4. Создать вариант

Шаг 5. Откроется форма выбора условий, при выполнении которых будет выбран вариант. В выпадающем списке выбираем "Материал: тип" и нажимаем кнопку "Добавить":

Шаг 5. Добавления правила выбора - Материал: тип
Шаг 5. Добавления правила выбора - Материал: тип

Шаг 6. После нажатия кнопки появится попап с выбором доступных типов материалов. Здесь стоить отметить галку "Обратный (НЕ)". При нажатии на нее условие работает с точностью наоборот. Например, если галка не нажата и выбран тип материала "Новость", то условие будет срабатывать только для новостей, а если нажать галку, то условие будет срабатывать для всех типов материалов кроме новостей. Отмечаем тип материала "Новость", нажимаем галку "Обратный (НЕ)" и жмем кнопку "Сохранить":

Шаг 6. Сохранение правила выбора - Материал: тип
Шаг 6. Сохранение правила выбора - Материал: тип

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

Шаг 7. Добавление правила выбора - Пользователь: роль
Шаг 7. Добавление правила выбора - Пользователь: роль

Шаг 8. После нажатия кнопки появится попап с выбором доступных ролей, выбираем роль "анонимный пользователь" и жмем кнопку "Сохранить":

Шаг 8. Сохранение правила выбора - Пользователь: роль
Шаг 8. Сохранение правила выбора - Пользователь: роль

Здесь мы видим список всех наших условий для варианта:

Список правил выбора
Список правил выбора

Шаг 9. Условий может быть сколько угодно. Под списком правил выбора расположена форма выбора логики проверки условий: "Все критерии должны выполняться", или "Хотя бы один критерий должен выполняться". Не меняя логику проверки жмем "Далее":

Шаг 9. Сохранение правил выбора
Шаг 9. Сохранение правил выбора

Шаг 10. Откроется форма с настройками варианта:

Шаг 10. Настройки варианта
Шаг 10. Настройки варианта

Шаг 11. Здесь:

  • Административный заголовок - это название варианта, которое отображается в списке всех вариантов страницы;
  • Response code - код ответа сервера.

 Так как нам нужно показать пользователь страницу "Доступ запрещен", выбираем "403 Access denied" и жмем кнопку "Создать вариант":

Шаг 11. Создать вариант
Шаг 11. Создать вариант

Шаг 12. Название кнопки "Создать вариант" сменилось на "Обновить и сохранить", жмем ее. Для того, чтобы отредактировать вариант, добавить правила выбора или посмотреть сводку, вы можете воспользоваться вертикальным меню:

Вертикальное меню
Вертикальное меню

Поставленная задача выполнена! Теперь когда анонимные пользователи будут открывать контент любого типа (кроме новостей), они будут видеть страницу "Доступ запрещен". Вот так с помощью Page Manager можно с легкостью настраивать правила доступа к страницам сайта.

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

Аватар пользователя Александр
Александр

Спасибо за эту и другие статьи по Page Manager и Panels, коротко и ясно.

Аватар пользователя Benya
Benya

Всегда пожалуйста. Рад, что кому-то пригодилось:)

Аватар пользователя Ya
Ya

Аналогичного результата можно достигнуть используя Rules.
Пусть будет 2 варианта решения задачи
+ 3й программный.
:D

Аватар пользователя Инга
Инга

Очень здорово и доходчиво. И спасибо, что рассказываете как реализовать более сложные вещи без кодирования.