Я создаю сайт на основе ZF2, и он имеет 2 разных макета. У него есть несколько общедоступных страниц и несколько внутренних страниц, требующих аутентификации пользователя, каждый набор страниц имеет свои макеты. Сначала я думал о создании плагина контроллера и проверке наличия у пользователя личности, после чего я изменю макет, но это также изменит макет общедоступных страниц для вошедшего в систему пользователя, чего мы не хотим. Также я не знаю, как изменить макет из плагина контроллера.
Макет внутренних страниц также требует некоторой информации о текущих пользователях и некоторой другой информации из других таблиц. Поэтому я подумал о создании другого плагина, который будет проверять, есть ли у пользователя личность, а затем устанавливать переменные макета. Я не уверен, как получить объект макета в плагине контроллера для установки переменных. Также не знаю, как получить доступ одного плагина к другому плагину.
Также для внутренних страниц я проверяю каждое действие, вошел ли пользователь в систему или нет. Если у него нет личности, я отправляю его на страницу входа. Это привело к большому количеству повторяющегося кода, поэтому есть ли способ переместить этот код в плагин контроллера и как-то сказать ему, чтобы он проверял личность пользователя на определенных страницах, и если у пользователя есть личность, разрешите ему доступ к странице, иначе отправьте его для входа в систему. экран.