Почитал документацию, везде пишут темизация форм, и т.п.
Нашел, как изменить добавить border или местами поменять, а убрать слово ПОИСК, или заменить на свое, нет.
Может есть статейка, где досканально обьясняется, какая функция в формах, за что отвечает. Ну или скиньте, как убрать это слово.
Комментарии
http://www.drupaldance.com/blog/%D1%82%D0%B5%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-%D1%84%D0%BE%D1%80%D0%BC
Вдобавок print_r($form);
И все будет нормалёк.
print_r($form) показывает вот что
( ...
[#value] => Поиск
...
)
Делаю в template.php так
{
$form['submit']['#value'] = none;
}
В следствии этого, пропадает вся кнопка ПОИСК.
Напомню, что нужно убрать слово поиск,а кнопку заменить на рисунок лупы.
ИМХО: только сел за Друпал.Неужели так тяжело переделывать формы.Что делать человеку,незнающему PHP?
а если пробел
Проблема в том, что, чему бы я не приравнивал $form['submit']['#value'], кнопка пропадает.
Сразу оговорюсь, вот ф-ия которую я вставляю в template.php
{
$form['submit']['#value'] = none;
}
Мне там ничего не надо добавлять, или менять?
Судя по темизация форм, ничего.
а возвращаете что в return?
вот на 6 у меня все ок:
$form['submit']['#value']=NULL;
return drupal_render($form);
}
или
$form['submit']['#value']='искалово';
return drupal_render($form);
}
и еше при всяких жестких изменениях в конфигурации темы вставляйте в template.php
или девелом очищайте.
Помогло?
тоже интересует это.
а разве в "недрах" друпала не хранится где-то в настройках это самое слово "Поиск"? так бы просто там его изменить и все.
так а код который я превел нормально же все меняет, а в "недрах drupal" это в переводах хотя это не так гибко как оверайд формы.
Вставил вот это.Не помогает(то же самое, пропадает кнопка).
C этим drupal_rebuild_theme_registry(); не совсем понял что делать.
Мне кажется, я что-то фундаментальное пропускаю.Не где не надо регистрировать функцию?
А в коде страницы у вас есть input этой кнопки?
Если есть, вам просто надо ее оформить стилями css.
Если нет, то я не знаю почему..
Вот код в template.php
function phptemplate_search_theme_form($form) {
$form['submit']['#value']='Искание';
return drupal_render($form);
}
после того как один раз страницу обновите с этим кодом, коментируете drupal_rebuild_theme_registry(); он нужен только для обновления регистра темы:
function phptemplate_search_theme_form($form) {
$form['submit']['#value']='Искание';
return drupal_render($form);
}
после этого смотрите что у вас получается, у меня с вариантом ='Искание'; и =NULL; для темы garland
Это для drupal 6, увас в тегах тоже 6 указан.
ЗАРАБОТАЛО!!!
Получается, что сброс кеша через админку не помогает.
Да Друпал 6-ой.
Пользуюсь темой ZEN, писали, что с неё надо начинать.
Если всех не достал еще, один вопрос, а где верстка
<?php print $search_box; ?> этого задается?
с регистром тем еще можно бороться через "выбрать другую тему, исходную отключить -> выбрать исходную и включить".
Верстка в search-theme-form.tpl.php скопируйте оригинал с
/modules/search/search-theme-form.tpl.php себе в папку с темой и опять обновить регистр тем.
вот я себе в template.php ничего не переназначал (лень было) а в
search-theme-form.tpl.php вставил такой код
<?php
$srch=array(
'Розового слона',
'Объявление',
'Квартиру',
'Новые фильмы',
'Фото Василия Пупкина',
'Инструкцию к туалетной бумаге',
'Свежий кин скачать бесплатно',
);
$txtsrch=$srch[rand ( 0, count($srch)-1)];
print preg_replace ( '/value=".*?"/' ,
'value="'.$txtsrch.'" onblur="if(this.value==\'\') this.value=\''.$txtsrch.'\';" onfocus="if(this.value==\''.$txtsrch.'\') this.value=\'\';" ',
$search['search_theme_form'] );
print $search['submit'];
print $search['hidden'];
Вот качественное решение проблемы:
http://my.kht.ru/blog/2009/02/theme-search-form-drupal6/