I have two sites with Genesis subthemes. On both, specificying a specific page on which a block in the second sidebar should NOT appear does not work. The block appears anyway. Specifying a page on which the block should be hidden does work for blocks in sidebar first and other regions.

Comments

John_B’s picture

I find on further expiment that the block system for displaying blocks by page or role is not working for all regions with the current version of Drupal 7 core. Tried to swith to dev version of Genesis but it broke the site, so looking forward to an upgradable full release :-)

Does anyone know whether installing Context module is likely to fix it? If no one knows, I might just try. It is great theme, and would be so much work rebuilding the css with another base theme.

John_B’s picture

Mysterious issue. I have found two workarounds.

Workaround 1:

Enable PHP input and include the following (for example) in blocks:

To display for anonymous user only,

global $user;
if(!$user->uid) : 

Content here
endif;

To display on front page only,

if(drupal_is_front_page()) :
Content here
endif;

Workaround 2:

Copies of blocks created by the Multiblock Module have correct block reaction with this theme.

Blocks created by custom views do not suffer from this problem (though they have the problem reported here http://drupal.org/node/1049444)

John_B’s picture

Title: sidebar second block display on specifici page » block reaction not working

I have found that by rebuilding my sub-theme as a main theme, this problem disappears. Therefore it appears to be caused by a conflict between genesis_preprocess and genesis_SUBTHEME_preprocess.

In case anyone else wants to do it, I found I had to copy genesis core to mytheme, move all the subthemes' css and template files there, rename theme in template.php mytheme.info, and add path to css files to mytheme.info.

Jeff Burnz’s picture

Assigned: Unassigned » Jeff Burnz

I think I know what this issue is, looks like a bug in the render system, the key here is visibility by role, I need to rewrite the conditionals around each region to account for this bug (was recently found in core), so I'll have to cut a new release.