Всем привет. У меня на сайте есть список материалов для администрирования модераторами сделанный через views. На этой же странице есть фильтры, по которым выводятся материалы (например, опубликован или нет, модерирован или ожидает модерации). Так вот мне нужно здесь же добавить фильтр по дате создания материала (расскрывающийся список - за последний день, за последнюю неделю, за последние две недели). Подскажите, если ли какой нибудь модуль для этого или какие то другие варианты.
Комментарии
Exposed filter во views
Вы имеете ввиду во views выбрать фильтр "По дате создания", поставить галочку "Expose this filter to visitors"? Если да, то ведь там можно задать только либо конкретные значения либо интервалы, а так, чтобы был выподающий список и 3 варианта на выбор (за последний день, за неделю, за две недели) - нельзя.
А кто вам мешает сделать 3 варианта самому?
О Боги! Чувствую себя тупым). Когда выбираешь фильтр по дате создания, то появляется текстовое поле. Если делаю три фильтра по дате создания, то на форме появляется три текстовых поля. Все перерыл, но так и не нашел, каким образом объединить эти три фильтра в выпадающий список. Lotar, может вы подскажете как это сделать?
Решил свою проблему написанием небольшого модуля.
<?php
$form['created']['#options'] = array(
$form['created']['#default_value'] = '';
function filter_date_create_form_alter(&$form, $form_state, $form_id) {
switch($form_id) {
case 'views_exposed_form':
if (isset($form['created'])) {
$form['created']['#prefix'] = '<div class="filter-date-create">';
$form['created']['#suffix'] = '</div>';
$form['created']['#type'] = 'select';
$form['created']['#size'] = 1;
'' => t('<Any>'),
'-7 day' => t('Last week'),
'-14 day' => t('Last two week'),
);
}
}
}
?>
Помогла ссылка http://drupal.org/node/522140
Хорошо что решили. Но на мой взгляд проще было добавить сск поле с датой и 3 интервалами. И его использовать для фильтра.