skip to content



Оформление блока поиска

Недавно столкнулся с задачей задания в теме Drupal собственного внешнего вида для формы поиска по сайту. Немного поискав по друпаловскому сайту, нашел простое и доступное решение.

1. Создаем в каталоге темы файл template.php и открываем его для редактирования (если файл уже существует, то создавать его заново не надо).

Дописываем в этот файл код:

<?php
function phptemplate_search_theme_form($form) {
/**
* This snippet catches the default searchbox and looks for
* search-theme-form.tpl.php file in the same folder
* which has the new layout.
*/
return _phptemplate_callback('search_theme_form', array('form' => $form), array('search-theme-form'));
}
?>

2. Создаем в каталоге темы оформления файл search-theme-form.tpl.php
В этом файле прописываем код, который мы хотим установить в качестве поисковой формы. Для drupal 5.x в качестве примера можно использовать следующий код:

<label for="search_theme_form_keys">Поиск по сайту</label>
<input
type="text" maxlength="128" name="search_theme_form_keys"
id="edit-search_theme_form_keys" size="25" value="" title="Введите критерии поиска" class="form-text" />
<input type="submit" name="op" value="Поиск" />
<input type="hidden" name="form_id" id="edit-search-theme-form" value="search_theme_form" />
<input type="hidden" name="form_token" id="a-unique-id" value="<?php print drupal_get_token('search_theme_form'); ?>" />

Обратите внимание на скрытое поле "form_token", без него форма поиска работать не будет. Вы можете задать произвольное оформление (например - кнопка поиска в виде изображения) или нужный вам текст для блока поиска по сайту - Drupal вас ни в чем не ограничивает.

По материалам статьи
Customising the search forms

Комментарии

оформление блока поиска

а как быть с кодировкой?
у меня всё выглядит как ????????????? и кнопка и комментарии

проблема с кодировкой

При редактировании и сохранении файла нужно использовать ту же кодировку, которую вы используете при просмотре сайта.

Powered by Drupal. CrystalX theme created by Nuvio | Webdesign.