2012-02-27 130 views
0

我想在我的菜单回调函数中设置页面变量myblock = false。这样当菜单条目被点击时这个块不会显示。 我想要做这样的事情:在函数中设置页面变量

function mymenu_cbfunction() { 
    ... // $myblock=false ?? 
} 

到取消激活块在page.tpl.php中:

<?php if ($myblock):?><div>php print $myblock; ?></div><?php endif; ?> 

有没有办法做到这一点?

回答

1

如果您希望排除在某些页面上显示此块,只需编辑admin/build/block中的块以在特定页面上排除该块。配置形式如下:

Block Config

如果你想立即隐藏没有导航到一个新的页面块,这将是对JavaScript/jQuery的一个很好的使用。

+0

谢谢。没有办法以编程方式做到这一点?我的所有页面都是以编程方式(包含模块)为此网站创建的。 – 2012-02-28 07:10:31

+1

当然,请查看['hook_block()'](http://api.drupal.org/api/drupal/developer%21hooks%21core.php/function/hook_block/6)具体来说,'visibility'和'pages'钥匙 – Laxman13 2012-02-28 14:09:16

+0

好的。我能够在hook_block中做我想做的事情。 Thx的帮助! – 2012-02-28 18:36:31