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

ありがとうございました。プログラムでそれを行う方法はありませんか?私のページはすべて、このサイト用にプログラムで(モジュールで)作成されています。 –

+1

確かに['hook_block()'](http://api.drupal.org/api/drupal/developer%21hooks%21core.php/function/hook_block/6)をチェックしてください。特に、 'visibility'と 'pages'キー – Laxman13

+0

いいえ。私はhook_blockで欲しかったことをすることができました。ヘルプのためのThx! –

関連する問題