2011-02-02 4 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

Оказалось, чтобы быть столь же просто, как изменение формы от должности, чтобы получить. Вот 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

Хорошо, что работает, но я хотел бы изменить файл поиска шаблона. Любые идеи, где можно найти это? – JHollanti

+1

Как правило, вы должны использовать hook_form_alter для изменения разметки формы. –

0

И в использовании темы:

<?php 
$form = drupal_get_form('search_block_form'); 
echo render($form); 
?> 
Смежные вопросы