Если я правильно понял, то, что вы пытаетесь добиться, - это иметь доступ только к определенным ролям на страницах, расположенных по указанному URL.
ИСПОЛЬЗОВАНИЕМ МОДУЛЯ ДОСТУПА К КОНТРИБУ
Как уже упоминалось в mcrittenden, существует множество модулей , позволяющих настроить доступ к контенту. Среди них доступ к контенту , безусловно, может делать то, что вы хотите, так как он позволяет вам настроить разрешение для каждого узла отдельно.
ИСПОЛЬЗУЯ ФЛАГ + ВИДЫ
Еще один возможный способ сделать это без кодирования, это с помощью комбинации флаговый модуль модуль просмотра . Вот краткий обзор того, как я бы сделал:
- Создайте три флага, которые вы можете использовать, чтобы пометить контент (любой тип контента!), Который необходимо будет просмотреть по любому из адресов, указанных вами в вашем вопросе (например: создайте флаг «intro», который вы будете использовать используется для отметки узлов, которые должны отображаться на странице "/ mangers / intro")
- Создайте 3 представления (по одному на каждый адрес, указанный в вашем вопросе), которые будут извлекать из БД нужные вам узлы, фильтруя их на основе вашего флага.
- Установите разрешение этих представлений в соответствии с ролью.
НАПИСАТЬ МОДУЛЬ, КОТОРЫЙ ПРОВЕРЯЕТ URI И БЛОКА НЕСАНКЦИОНИРОВАННЫХ ПОЛЬЗОВАТЕЛЕЙ
Вы, конечно, можете это сделать. Основным преимуществом будет то, что это будет очень легкое решение с точки зрения загрузки процессора и памяти, но есть несколько ошибок, на которые вы должны обратить внимание. Например, тот факт, что вы всегда можете получить доступ к своему контенту через URL в формате http://example.com/node/nodenumber),, поэтому вам также необходимо проверить URL для его псевдонимов. Но также тот факт, что пользователь может добавить фиктивный ? Что-то к URL, и вы должны написать регулярное выражение , чтобы учесть такой случай ...
(Также идея модуля правил , предложенная mcrittenden, хороша, но я не упомянул об этом, поскольку думал об этом, только когда прочитал его ответ).
Надеюсь, это поможет!