
Views: Exposed фильтры в блоке
Drupal 5, Views.
Переносим пользовательские (exposed) фильтры в блок (например, в колонку справа от списка).
По умолчанию форма (exposed) фильтров на странице, полученной с помощью views, находится непосредственно над списком нодов (или комментариев).

Но если количество фильтров довольно большое, тогда вам может понадобиться перенести фильтры в другое место, например в левую или правую колонку, хотя это довольно редкий случай.
Для этих целей здорово подойдет модуль Views_Filterblock.
С его помощью легко убрать фильтры, расположенные над списком и показывать их в любом другом месте как обычный блок.

Настройки блока фильтров:

Добавляем еще одну кнопку
При таком расположении фильтров (слева или справа от списка) удобно когда кнопка расположена не только внизу под фильтрами, но и вверху над ними:

Для того, чтобы добавить дополнительную кнопку в форму фильтров:
-
В любом своем модуле добавляем функцию:
<?php
function mymodule_form_alter ($form_id, &$form) {
if ($form_id == 'views_filterblock') {
$form['submit2'] = array(
'#type' => 'button',
'#value' => 'Выбрать'
);
}
}?> -
В файле template.php добавляем:
<?php
function phptemplate_views_filterblock_output($form) {
$output = '<div class="btn">' . drupal_render($form['submit2']) . '</div>';
$output .= drupal_render($form);
return $output;
}?>Это функция темы описана в модуле Views_Filterblock.
Так как в этом модуле переопределяется тема для формы фильтров, то добавление в функции mymodule_form_alter в массив #weight ничего не даст.
Спасибо, надо попробовать этот модуль в действии
Это Drupal 5 - так что на сегодня это уже устарело.
Отправить новый комментарий