Для темизации формы поиска в Drupal 7 надо сделать следующие:
- В папке с темой создать template.php
-
В начале файла вставить:
<?php
закрывающий тег не нужен. -
Вставить код:
function имя_темы_form_alter(&$form, &$form_state, $form_id) { if ($form_id == 'search_block_form') { $text = t('Поиск...'); $form['search_block_form']['#title'] = $text; // Change the text on the label element $form['search_block_form']['#title_display'] = 'invisible'; // Toggle label visibilty $form['search_block_form']['#size'] = 30; // define size of the textfield $form['search_block_form']['#default_value'] = $text; // Set a default value for the textfield $form['actions']['submit']['#value'] = t('GO!'); // Change the text on the submit button $form['actions']['submit'] = array('#type' => 'image_button', '#src' => base_path() . path_to_theme() . '/image/search.png'); // Add extra attributes to the text box $form['search_block_form']['#attributes']['onblur'] = "if (this.value == '') {this.value = '$text';}"; $form['search_block_form']['#attributes']['onfocus'] = "if (this.value == '$text') {this.value = '';}"; // Prevent user from searching the default text $form['#attributes']['onsubmit'] = "if(this.search_block_form.value=='$text'){ alert('Please enter a search'); return false; }"; // Alternative (HTML5) placeholder attribute instead of using the javascript $form['search_block_form']['#attributes']['placeholder'] = $text; } }
- имя_темы заменить на системное имя используемой темы
- Внутри папки с темой создать папку image, в которую скопировать картинку для кнопки поиска