I am trying to personalize the viewing experience for users on a site. I'm trying to figure out how to create a view that will show content tagged with taxonomy term 'a_term' to users with the role 'a_role'. I want to tag all of my content with these different tags so that users with 'b_role' will see content tagged with 'b_term', 'c_role' -> 'c_term', etc...

Note: these are example names for roles/terms - there will be no naming convention like this.


1 Answer 1


Have you taken a look at Taxonomy Access? It allows you to set access control for roles based on taxonomy terms.

EDIT: Ignore the above dumb reply and feel free to downvote.

I think you could do this by creating a custom contextual filter in Views. Your contextual filter would look at the current user and decide which taxonomy terms ids to return.

If you are using Drupal 7 you could tag the users themselves with the same terms as a way to store which terms are associated with which users. Otherwise you might need to create a separate table to store the user to taxonomy association.

  • Looks great, but I don't want to restrict access to these nodes. I want a "Things You Might Be Interested In" functionality. I based what they're interested in on their role, which they choose when they signup.
    – user1750
    Commented Apr 30, 2012 at 19:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.