Студия разработки сайтов и приложений

Netspark.ru

Заметки и разработки

Drupal

Поиск в Друпале

Вчера установил на домовую страницу модуль поиска из ядра Друпала. Немедленно выяснилась проблема с переводом: заголовок поисковой страницы называется "Search", и на кнопке поиска тоже написано "Search". Очевидно, что перевод слова повлечет одинаковую надпись в заголовке и на кнопке. А мне хочется, чтобы страница называлась "Поиск", а на кнопке был глагол. Лезть при этом в код модуля не очень хочется, так как при следующем же обновлении придется делать все заново. Но есть прекрасный хук hook_form_alter, которым можно дополнить специальный модуль:

/**
 * Изменяет форму поиска, заменяя надпись на кнопке
 *
 * @param array $form
 * @param array $form_state
 * @param string $form_id
 */
function tweaks_form_alter(&$form,$form_state,$form_id) {
    $correct_button = array('#type' => 'submit', '#value' => 'Найти');
    if ($form_id == 'search_form') {
        $form['basic']['inline']['submit'] = $correct_button;
    }
    if (($form_id == 'search_box') || ($form_id == 'search_block_form')) {
        $form['submit'] = $correct_button;
    }
} //function tweaks_form_alter

Гражданам, желающим получить более гибкое решение, предлагается изменить первую строчку функции

$correct_button = array('#type' => 'submit', '#value' => t('Search btn'));

и затем перевести "Search btn" по вкусу.

Комментарии