Как запретить доступ к узлу на основе пользовательского фильтра / поля в узле? - PullRequest
0 голосов
/ 17 марта 2011

Я ищу способ управления доступом к узлу (мой собственный тип контента), даже если для него установлен бит «опубликовано».У меня есть настраиваемое поле (datetime), которое указывает, когда узел должен быть доступен для посетителей.Как мне подключиться к Drupal 7 для этого?

С наилучшими пожеланиями, Эгил.

Ответы [ 2 ]

2 голосов
/ 29 августа 2013

Я выполнил аналогичную вещь, используя hook_node_access_records() и hook_node_grants().Мой пример для поля в узле, которое ограничивает доступ на уровне группы, но та же самая концепция работает (более легко) для контента вне группы.

Описание того, что я сделал, здесь: https://drupal.stackexchange.com/questions/36269/how-to-restrict-node-access-to-nodes-based-on-field-value/83975#83975

Однако вам может быть проще следовать примеру модуля доступа к узлу: https://api.drupal.org/api/examples/node_access_example!node_access_example.module/7

Это именно то, что я изменил, чтобы получить мой код.

1 голос
/ 17 марта 2011

Посмотрите на node_access () , вы сможете делать то, что вам нужно.

...