Доброго времени суток.
В основных настройках сайта можно добавить ссылку на страницу, которая будет отображаться при "доступ закрыт"
Можно как нибудь её хакнуть? правила описаны в hook_node_access.
Создай ноду и назначь её в качестве 403 страницы в основных настройках сайта. Только по хорошему надо поставить ещё rabbit hole и указать, чтобы эта нода сама тоже отдавала 403 код на случай, если кто-то на неё забредёт случайно.
Комментарии
FILE NAME SUGGESTIONS:
* page--403.html.twig
* page--4xx.html.twig
в моем случае можно сделать через tpl по ролям. но все же хотелось логику на бекенде сделать через подмену системных настроек
Также подойдет решение если установить на каждый forbidden() свою страницу
сейчас работает через \Drupal::messenger()->addWarning, но хотелось бы изменить title и body
Создай ноду и назначь её в качестве 403 страницы в основных настройках сайта. Только по хорошему надо поставить ещё rabbit hole и указать, чтобы эта нода сама тоже отдавала 403 код на случай, если кто-то на неё забредёт случайно.
собственно вопрос в том как создать не одну , а несколько нод
<?php
$url = Url::fromRoute('entity.node.canonical', ['node' => 111]);
$response = new RedirectResponse($url->toString());
$response->send();
// return AccessResult::forbidden();
?>
Вот такое решение в hook_node_access. Является ли безопасным это решение для управления бизнес логикой?