Как отображать разное содержимое для разных ролей для одного и того же URL-адреса?


У нас есть вариант использования, при котором 6-7 типов ролей пользователей могут получать доступ к одним и тем же узлам (их много) и просматривать различное содержимое в зависимости от ролей.

Например, пользователь с ролью А получает доступ sitename.com/faq и видит определенный контент. Однако, когда пользователь с ролью B обращается к имя_сайта/часто задаваемым вопросам, он видит другой контент, основанный на их роли. (Пожалуйста, обратите внимание, что здесь мы говорим не просто о переводе)

Как бы я мог получить это подстава? Я знаю, что если бы у нас было 2-3 узла, которым требовался такой доступ, я мог бы проверить его программно, однако в этом случае узлов много, и это было бы проблематично.

Какие-нибудь советы или модули, которые вы можете придумать, которые помогли бы мне в этом?

Большое спасибо

 1
Author: jini, 2013-06-29

2 answers

Мне нравится использовать менеджер страниц с вариантами, установленными в контекстах на основе ролей. Предполагая, что у вас установлен набор инструментов chaos, он у вас уже есть.

Если вы не использовали менеджер страниц, доступ к нему осуществляется из /admin/structure/pages

Достойное введение в то, что вы хотите сделать, можно найти здесь: http://nodeone.se/en/learn-page-manager-part-1-overview

В простейшем случае менеджер страниц можно использовать для переопределения путей по умолчанию с помощью перенаправления, на основе настроек контекста, например... сказать... роли текущего вошедшего в систему пользователя. Он хорошо интегрируется с панелями, предоставляя контекст для содержимого на основе панелей, включая панели просмотра содержимого.

Использование модуля контекста может сработать и для вас, в зависимости от того, как вы настроили свои страницы. Я использую его для размещения блоков на основе ролей пользователей и путей. https://drupal.org/project/context ... гм... "блокирующая система на стероидах" - это одно из ее описаний.

Без зная немного больше о том, как вы настроили свои часто задаваемые вопросы, это все, что я могу вам сейчас дать.

 1
Author: Dom Day, 2013-06-29 10:29:05

Звучит так, как если бы модуль Доступа к контенту , модуль ACL, (возможно) модуль Nodeaccess или, возможно, даже их комбинация были бы хорошим местом для начала.

 1
Author: jerdiggity, 2013-06-29 06:48:17