Привет друзья, подскажите пожалуйста неопытному друпаллеру, можно ли label'ы что у селектора views exposed filters запихнуть в сами select вместо значения по умолчанию (- Любой -) ну или эти значения задать вручную. Суть в том что бы вместо значения по умолчанию были названия селектора, а не слово - Любой -
Прошу прощения за кривизну вопроса.
В попытках гугления я поняла, что по английски справляюсь лучше, чем по русски, в общем сама спросила, сама отвечаю
Решение:
Способ 1:
Использовать модуль Better Exposed Filters в настройках views переопределяем "Стиль формы раскрытых фильтров" на "Better Exposed Filters" и в настройках каждого из ильтров можно задать значение для поля "- Any -" всё просто и элегантно.
Способ 2: (для извращенцев типа меня)
Для решения я нашла простой выход — использование jQuery. Во вьюсе стёрла метки расскрытых полей и дописала такой скрипт:
(function($){
$("#edit-field-type-value option[value='All']").html("Вид недвижимости");
$(".form-item-field-price-value-1 input").attr("placeholder", "Максимальная цена");
})(jQuery);
</script>
Для кошерности вынесла всё в отдельный файл custom.js
Да, я отдаю себе отчёт в том, что это костыль, если кто то знает вариант получше, делитесь пожалуйста в комментариях. Ну а пока я делюсь своими скромными находками.
Комментарии
Забавно, на английском нашла быстро такое вот решение, но после вставки в template.php и чистки кэша ровным счётом ничего не произошло
// dpm($form);
if ($form['#id'] == 'views-exposed-form-objects-page-1') {
// Modifications go here.
// example: (change the field name to yours)
$form['edit-field-location-tid']['#default_value'] = 'Расположение';
}
}
Вы правы! Дело в том, что я не разработчик а дизайнер, но влюблена в друпал, и по этому на меня вечно вешают, всё что не попадя, вот и выкручиваюсь как могу
Использовала модуль Better Exposed Filter, там это решение из коробки, а для текстовых input при помощи js повесила placeholder. Решения вынесла в свой пост, на случай если кому пригодится
Решение для input полей можно так же сделать модулем: form_placeholder. Хотя лучшим вариантом для меня осталось написать свой модуль:
<?php
function my_module_form_alter(&$form, &$form_state, $form_id) {
if (isset($form['author'])) {
$form['author']['#attributes'] = array('placeholder' => array(t('Enter the name...')));
}
}
?>