Фильтр даты на Drupal: убрать "-Year" из выбора - PullRequest
0 голосов
/ 07 января 2010

Как говорится в названии, я не могу понять, почему "-Year" добавляется в верхнюю часть моего поля выбора фильтра. Что мне нужно сделать, чтобы он ушел?

Ответы [ 2 ]

0 голосов
/ 13 января 2010

Нашел решение для этого, и это довольно глупо.

Я закончил тем, что поместил это в пользовательский модуль, и в результате убрал метку, а также установил количество отображаемых лет на основе данных в базе данных:

function modulename_form_views_exposed_form_alter(&$form, $form_state) {
    if($form['#id'] == 'theformid') {
        // Remove the label as the first element from the date select
        $form['date_filter']['value']['#date_label_position'] = 'none';

        // Find the minimum year from all of the published news nodes
        $date = db_fetch_array(
                    db_query("
                            SELECT YEAR(MIN(d.field_date_value)) as 'min'
                            FROM {content_field_date} d
                            INNER JOIN {node} n
                                ON n.nid = d.nid
                            WHERE n.type = 'news' AND n.status = 1")
                );

        // Set the new year range in the filter
        $new_min = date('Y') - $date['min'];
        $form['date_filter']['value']['#date_year_range'] = "-$new_min:+0";
    }
}
0 голосов
/ 13 января 2010

Выберите год в раскрывающемся списке «Абсолютное значение» при настройке фильтра даты. Этот год будет отображаться вместо года. Хотя я сомневаюсь, что вы действительно можете удалить -Year из открытого поля выбора, если вы не внесете некоторые изменения / дополнения в исходный код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...