This is a bit of holy grail for Drupal admins. One of the greatest failings of Drupal prior to version 4.7 has been the inability to really control whether a block shows up based on a user’s role. Even in 4.7 Drupal still requires you to insert a PHP snippet, which might not be very easy for some people.

Then comes Derek Wright’s new blocks module for Drupal 4.6.x. Plenty of people have poured hundreds of hours into their 4.6 sites and have no desire to upgrade. This new blocks module will provide some much-needed flexibility for those Drupal admins who want some blocks to appear based on the user role.

I’ve installed this on a 4.6.6 site and it works as advertised. In the block configuration screen a new set opf check boxes appears, one for each role, which allows you to select which roles will see the block. It’s that simple.

Be careful installing this. You can apply the patch if you are comfortable doing that. Or, the patched blocks.module is available directly from the thread as well. Either way you need to make an alteration to your database. Read the thread carefully and then proceed.

Only do this on a test site first. Do NOT apply this to a live site without testing it in case you have problems. You have been enlightened AND warned.

Go for it: http://drupal.org/node/49154