How can I display blocks depending on the logged in user?

Let's say I have a Block1 and Block2. When user1 is logged in, that user should only see Block1, but user2 should only see Block2

I found the Logic Block module, but it doesn't seem to work for what I'm trying to do.

  • 1
    First, why by users? Can't you do it by role? Second thing, " it doesn't work" is most useless report in IT :) Tell us what you did, what you expected to happen and what actually happened.
    – Mołot
    Aug 26, 2014 at 10:31
  • Try to control it with User Roles. Aug 26, 2014 at 10:31
  • Ow, I'm sorry, :D I would try user roles. By it doesn't work I mean't. I tried the to set everything and followed the instructions. But still nothing happens.
    – Richard
    Aug 26, 2014 at 10:33
  • "Nothing happens" == no blocks shown? Or all blocks shown, no matter who is looking? Or wsod? There are many ways nothing can happen ;)
    – Mołot
    Aug 26, 2014 at 11:09
  • worth checking it drupal.org/project/block_access
    – Bala
    Oct 2, 2014 at 2:54

2 Answers 2


You could go to blocks setting and there are Roles tab. If you check "anonymous user" - this block will visible only for not loggined user. If you check " authenticated user" - block will be visible loggined user. enter image description here


You can use the Context module. There you can compare current user id, user role etc to show blocks.

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