Views: Программно изменить значение по умолчанию у exposed filters


93

Пример, как программно изменить значение по умолчанию у фильтра views

/**
 * Меняем значение фильтра (exposed filters) по умолчанию
 * @param $view
 *
 */
function MYMODULE_views_pre_build(&$view) {
  if ($view->name == 'ИМЯ_ПРЕДСТАВЛЕНИЯ') {
    $display = $view->current_display;
    $filter_field = 'ИМЯ_ПОЛЯ_ФИЛЬТРА'; //Например, 'field_region_value'
    $new_value = НОВОЕ_ЗНАЧЕНИЕ;

    if (isset($view->display[$display]->handler->handlers['filter'][$filter_field])) {
      $view->display[$display]->handler->handlers['filter'][$filter_field]->value = array(
        $new_value => $new_value,
      );
    }
  }
}
Добавить комментарий
Может быть интересно

По умолчанию при запуске команды  composer update происходит перезапись основных файлов в корне сайта (.htaccess, robots.txt). Но зачастую такое поведение мешает работе системы (если файлы отредактированы вручную, или для формирования robots.txt используется специальный модуль)

4
Модуль Migrate это фреймворк для миграции (импорта) данных в Drupal из любых источников.
1

Порядок действий для установки Solr на сервере с Centos 7

4

Несколько способов как в twig объединить несколько строк в одну

3
По умолчанию модуль Node clone добавляет свою ссылку в разделе действий (MENU_LOCAL_ACTION). Что бы перенести их в раздел вкладок (tabs) нужно добавить в свой модуль небольшой hook
1