Уроки по программированию

Drupal 7 select (views) заменить значение -Any- (любой), -All- (все)

В этом уроке я покажу как в Drupal 7 select (views) заменить значение -Any- (любой), -All- (все) на своё. Для того чтобы изменить первый элемент -Любой- (-Any-, -All-) во views в select (exposed filters) нужно прописать свой код в файле template.php. Файл template.php должен располагаться в корневой папке вашего шаблона (sites\all\themes\НазваниеВашейТемы или в папке theme)

function НазваниеВашейТемы_form_alter(&$form, $form_state, $form_id) {
  if($form_state['view']->name == 'МашиноеИмяВьювс') {
    $form['ИмяСелекта']['#options']['All'] = t('ВашеЗначение');
  }
}

НазваниеВашейТемы — Вместо этого нужно прописать название вашей темы к примеру если у вас тема garland, то вы должны прописать  garland_form_alter

МашиноеИмяВьювс — Машиное имя задается при создание views

ИмяСелекта — Имя селекта можно узнать через утилиту firebug, либо открыть код в браузере и посмотреть. Имя селекта находится в атрибуте name

select-name

ВашеЗначение — Вместо этого значения нужно вставить свое. У меня к примеру в выпадающем списке были цвета и вместо первого элемента Любой я поставил Цвет и вот что у меня получилось.

select

Пример:
Допустим у меня есть тема с названием alisa тогда код будет выглядеть следующим образом

function alisa_form_alter(&$form, $form_state, $form_id) {
  if($form_id=='views_exposed_form'){
	  if($form_state['view']->name == 'catalog') {
	    $form['field_collection_tid']['#options']['All'] = t('Производитель');
	  }
  }
}

Комментарии к статье

    ValueError thrown

    Unknown format specifier "a"