Answers:
是。将块内容设置为false会将其从显示中隐藏,如果不存在其他块,则将隐藏该区域。我想您将需要与以下类似的设置:
$block['content'] = _my_module_custom_block();
...
function _my_module_custom_block(){
if( HIDE_CONDITION )
return false;
}
该规则块知名度模块是另一种选择可用...... 不需要PHP的过滤器启用。以下是其项目页面的引文:
规则块可见性模块允许“规则”组件用于控制块可见性。除了Drupal提供的默认可见性选项之外,这还为Drupal管理员和开发人员提供了极大的灵活性,可以控制何时在其网站上显示块。
通常的想法是,如果可以使用“规则”来实现,则可以使用它来控制块的可见性,因此可能性是无限的。
是否需要仅对一个月以上注册的用户显示屏蔽?
也许您有一个必须在工作日的上午8点至下午5点之间显示的街区?
如何根据当前天气情况显示或隐藏街区?
所有这些都可以通过使用“规则”块可见性来完成。
此外,按照上面的“ 如果可以使用规则来操作,则可以使用它来控制块的可见性 ” ,您可以使用规则来实现各种自定义逻辑(请参见“以编程方式/自定义模块”部分您的问题)。
有关如何使用此模块的说明,请参考我对“ 如何停止将Views阻止向管理员显示,例如user / 1? ”的回答。