Как показывать пользователю статьи тоьлко определенной категории?

Главные вкладки

Аватар пользователя cadaver cadaver 7 июля 2005 в 14:19

Не могу понять, как решить такую проблему:
На сайте есть таксономия со словарем стран.
Каждый пользователь принадлежит одной или нескольким странам (допустим, читатель из США, читатель из Германии, читатель из Прибалтики, то есть одновременно из Эстонии, Латвии и Литвы).

На сайте есть набор статей, причем некоторые из этих статей не имеют привязки к стране -и, таким образом, являются общими - а некоторые относятся к конкретной стране, и в этом случае надо, чтобы эта статья отображалась только для пользователя, в профиле которого указана эта страна.

Как это сделать?

Комментарии

Аватар пользователя cadaver cadaver 7 июля 2005 в 21:40

Я знаю про таксономии (это вытекает из текста моего сообщения). Я не знаю, как фильтровать контент, выдаваемый этим пользователям, в соответствии с их ролями.

К примеру, есть у нас роли: Читатель, Участник, Редактор.
Кроме того, есть роли (таксономия?) - США, Россия, Франция.

Я хочу, чтобы пользователь из США вообще не видел контента, относящегося к России и Франции. Однако контент, не имеющий привязки к стране и контент, относящийся к США, чтобы он видел и мог с ним поступать соответственно прописанным для его роли правам.

Понятно объяснил?

Аватар пользователя edhel edhel 7 июля 2005 в 23:54

Можно забить на стандартную фичу модуля taxonomy, которая позволяет просматривать список нодов по категории с помощью урлов вида taxonomy/term/1+2... и написать собственный модуль, который будет нужным образом обрабатывать запросы типа /show_articles/category_id, выдавая не полный список статей, а в зависимости от профиля текущего юзера.

Аватар пользователя GOgo GOgo 9 июля 2005 в 17:17

Я сам не пробывал, не было такой надобности вот это тебе должно помоч
Taxonomy Access Control - http://drupal.org/project/taxonomy_access
в описании написано то, что позволяет администратору, косвено управлять доступом к содержанию, назначая различные роли которые могут иметь доступ к определенным категориям.
собственно вот и вареант решения твоей нужды...
1. дели все по категориям например новости>(по принадлежности к стране) ну и общую.
2. делаем роли (для русских, амеров, чехов...) в которых указываем, что кому можно смотреть.
3. чтоб все заработало, нужно правильно назначить пользователю соотвествующую роль...
Отпиши о результате!