[РЕШЕНО] Текст в поиске по умолчанию. (template.php и search_box)

Комментарии

Аватар пользователя Valery.O Valery.O 20 апреля 2012 в 4:32

Вот решение:

1. Копируем файл modules\search\search-block-form.tpl.php в папку с темой

2. Вставляем в файл код:

<form action="/" method="post" id="search-block-form" accept-charset="UTF-8">
        <div class="container-inline">
                <h2 class="element-invisible">Форма поиска</h2>
                <div class="form-item form-type-textfield form-item-search-block-form">
                <label class="element-invisible" for="edit-search-block-form--2">Поиск </label>
                <input onblur="if (this.value == &#039;&#039;) {this.value = &#039;Поиск по сайту...&#039;;} ;" onfocus="if (this.value == &#039;Поиск по сайту...&#039;) {this.value = &#039;&#039;;} ;" type="text" id="edit-search-block-form--2" name="search_block_form" value="Поиск по сайту..." size="15" maxlength="128" class="form-text" />
                </div>
                <div class="form-actions form-wrapper" id="edit-actions"><input type="submit" id="edit-submit" name="op" value="Поиск" class="form-submit" /></div>
                <input type="hidden" name="form_build_id" value="form-hn9YxGaCVqRTt1Gpn0lm4IrtHRM0NoilQZreP2827E4" />
                <input type="hidden" name="form_token" id="a-unique-id" value="<?php print drupal_get_token('search_block_form'); ?>" />
                <input type="hidden" name="form_id" value="search_block_form" />
        </div>
</form>

3. Создаем файл template.php в папке с темой и пишем код:

<?php
function phptemplate_search_block_form($form) {
    return 
_phptemplate_callback('search-block-form', array('form' => $form));
?>
Аватар пользователя drupby drupby 20 апреля 2012 в 5:10

просто в template.php

function имя_темы_form_search_block_form_alter(&$form, &$form_state) {
 
  // задаём  default value равное "New search"  .
  $form['search_block_form']['#default_value'] = t('New search');
  // обработчик default value при получении\потери фокуса
  $form['search_block_form']['#attributes']['onblur'] = "if (this.value == '') {this.value = '" . t('New search') . "';}";
  $form['search_block_form']['#attributes']['onfocus'] = "if (this.value == '" . t('New search') . "') {this.value = '';}";
}