Рейтинг:0

Доступ к узлу на основе пользовательского поля ссылки

флаг mx

У меня есть тип контента, который используется для временного доступа. Узел создан и имеет срок действия; он удаляется после этой даты. На этом узле есть поле ссылки на пользователя; только пользователи, добавленные в это поле, должны иметь доступ к просмотру этого узла. Я не могу найти крючок для обработки этого доступа. В Drupal 7 я использовал крючок_node_access(), но, похоже, его не существует для Drupal 9.

Единственная информация, которую я ищу, это как использовать привилегии доступа для данного типа узла. После этого я могу обрабатывать логику того, какие пользователи содержатся в поле ссылки.

Рейтинг:0
флаг us

Drupal 9 по-прежнему использует крючок_node_access(). Это задокументировано под крючок_ENTITY_TYPE_access() потому что он вызывается для каждого существующего объекта, а не только для объекта Node.
Если моймодуль является модулем, который реализует этот хук для объекта Node, функция, реализующая хук, будет мой модуль_node_access(), точно так же, как в Drupal 7. Код Drupal 7 по-прежнему необходимо портировать на Drupal 9, так как многие детали изменились между Drupal 7 и Drupal 9.

Если вам нужно проверить доступ для разных объектов, вы можете реализовать hook_entity_access().

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.