2012-02-27 75 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