2011-02-02 14 views
2

カスタム検索ボックスを作成し、それを使ってDrupalの検索モジュールとやりとりしたいと考えています。現在、すべてがうまくいきます。しかし、私はまた、検索で適切なトークンを使用する必要があります。私はDrupalがこのトークンを形成するためにどのようなキーを使うのか分かりません。Drupal 7の検索パラメータ

現在、私は持っている:

<form class="search-form" action="/search/node" method="post" id="search-form" accept-charset="UTF-8"> 
    <input type="text" name="keys" class="search_box" value="Search ..." /> 
    <input type="hidden" name="form_id" id="search-form" value="search_theme_form" /> 
    <input type="hidden" name="form_token" value="<?php print drupal_get_token('search_theme_form'); ?>" /> 
</form> 

これは、1つのページの結果を表示するのに十分動作します。 2番目の結果ページに移動しようとすると、すべての結果が破棄されます。

答えて

1

を使用する必要があります。ここには動作するソリューションのhtmlがあります。

<form class="search-form" action="/search/node" method="post" id="search-form" accept-charset="UTF-8"> 
    <input type="text" name="keys" class="search_box" value="Search ..." /> 
</form> 

トークンを定義する必要はありません。

+0

ありがとう、私は本当にDrupalの機能を混乱させる時間がなかった! –

1

あなたは、おそらくそれを得るためにポストからフォームを変更するのと同じくらい簡単であることが判明し、より適切な

$form = drupal_get_form('search_block_form'); 
return drupal_render($form); 

http://api.drupal.org/api/drupal/modules--search--search.module/function/search_form/7

+0

[OK]を、動作しますが、私は、検索テンプレートファイルを編集したいと思います。誰かがこれを見つけるかもしれないどんな考えですか? – JHollanti

+1

通常、フォームのマークアップを変更するには、hook_form_alterを使用する必要があります。 –

0

とテーマの使用中:

<?php 
$form = drupal_get_form('search_block_form'); 
echo render($form); 
?> 
関連する問題