xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Создаём архив со списком всех материалов, сгруппированных по месяцам, с помощью Views

Опубликовано в

На идею подтолкнул пост Sam-а "Открыт архив".

Архив с помощью Views

  1. Создаём представление с именем archive и типом Материал.

  2. Добавляем поля:

    Материал: Заголовок — с пустым поле Метка и включённой опцией Создать ссылку на материал, к которому относится текущее поле (скриншот).

    Материал: Количество комментариев — с пустым поле Метка, префиксом ( и суффиксом ) (скриншот).

    Материал: Дата создания — с пустым поле Метка, с включённой опцией Исключить из вывода и собственным форматом даты: Y, F (скриншот).

  3. Добавляем фильтр по типу материала и флагу Опубликовано (скриншот).

  4. Добавляем критерий сортировки по полю Материал: Дата создания и порядком сортировки По убыванию (скриншот).

  5. Изменяем стиль вывода на HTML список и группировкой по полю Дата создания (скриншот).

  6. Изменяем опцию Элементы для показа на 0, т.е. — не ограничено.

В итоге, в предпросмотре, должен получиться вот такой список, сгруппированный по месяцам:

Предпросмотр представления

Добавим немного CSS:

.view-archive li div {
    display: inline;
}
 
.view-archive .item-list {
    margin-bottom: 2em;
}

И получим:

Материалы сгруппированные по месяцам

Не забываем включить кэширование вида, так как получившийся запрос к базе довольно тяжёлый.

Написанное актуально для Views 6.x-2.x
Похожие записи

Комментарии RSS

А не подскажите, как сделать так, чтобы пользователь мог выбирать месяц из выпадающего списка?

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

Добавим немного CSS:

Куда добавим??? можно подробнее?? пару строк...

в css файл, куда же ещё

Это понятно, а где тогда указать к нему путь ?

а не подскажете как сделать год и месяц ссылкой?

у полей есть опция - выводить в виде ссылки

мне просто необходимо сделать вот http://минстройрд.рф/news/2011

может вы знаете как это можно будет реализовать?

у полей есть опция - выводить в виде ссылки

про ссылку я знаю. но мне сортировку организовать необходимо как на сайте http://минстройрд.рф/news/2011. в верней части сайта блока содержимого сайта
.

мне сортировку организовать необходимо

не знаете как сортировку добавлять? http://drupal.org/node/54459

мы не понимаем друг друга. я имею в виду то что на мною приводимом сайте в верхней части выводятся года за были добавлены новости. по нажатию на которые выводятся месяца в которых были опубликованы новости. и по нажатию на месяц выводятся новости за этот месяц. вот мне нужно реализовать именно такую панель. Если можете подскажите как это можно реализовать.

думаю только с помощью своего модуля

просто мне писать его нет времени. поэтому и решил обратиться на форум.

"Добавим немного CSS:"
В какой файл, как называется класс?
Его нужно вписать в "КЛАСС CSS: "
Допишите статью пожалуйста...

Спасибо, все понятно и доступно - сделала без проблем :)

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании