2011-01-11 11 views
0

現在のDrupalページが検索結果ページであるかどうかを確認するにはどうすればよいですか?クリーンURLを仮定し現在のDrupalページが検索結果ページであるかどうかを確認しますか?

+0

あなたがしたいことに関するいくつかの詳細をお知らせください。そして、モジュールを作成したり、テンプレートで作業していますか? – JeroenEijkhof

+0

テンプレートを編集する方法については、この記事を参照してください。 http://stackoverflow.com/questions/2068996/how-to-modify-the-drupal-search-templates – JeroenEijkhof

答えて

1

がオンになっている、これは通常、あなたのtemplate.php内部

function MYTHEME_preprocess_page (&$vars, $hook) { 
    // ... 

    if ($hook == 'page' && arg(0) == 'search') { 
    // do search related stuff 
    } 
} 

に動作します。

page.tpl.phpの代わりにpage-search.tpl.phpを使用するなど、通常のテンプレート候補も使用できます。

+1

arg()関数はクリーンURLに依存しないため、クリーンURLが無効になっている場合にも機能します。 $ hook変数は、MYTHEME_preprocess(&$ vars、$ hook)でのみ使用できます。関数MYTHEME_preprocess_page(&$ vars)は既に 'page'フックに固有であるため、そこに$ hook変数はなく、ifステートメントの外に置くことができます。 – marcvangend

+0

arg()の説明をありがとう。私はクリーンなURLなしでデプロイしません。また、前処理エラーを指摘してくれてありがとう、私は気づいたことがありません(これはzen STARTERKITの仕組みです)。 – mpdonadio

関連する問題