Урок 11. Создание видов

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

Часто бывает, что подобный внешний вид не устраивает владельцев сайта, они хотят или им требуется что-то особенное для их web-ресурса. Именно для таких случаев предназначен модуль Views (Виды). Загрузите и установите его в файловую структуру сайта; также с сайта drupaler.ru загрузите и установите файл перевода для данного модуля, т.к. сам модуль достаточно сложен и работа с ним и без того обычно малопонятна начинающим. Если вы экспортируете перевод в формате пакета, то после его разархивации переместите содержимое в папку модуля Views.

Включите следующие подмодули: Views и Views UI. Перейдите на страницу Конструкция сайта ? Представления. Здесь уже есть несколько готовых представлений (включенные или нет). Включим представление frontpage, которое предназначено для формирования главной страницы, и перейдем на страницу его редактирования.

Перед вами откроется сложная форма с множеством настроек. Слева будут три вкладки — Default (по умолчанию), Page (Страница) и Feed. Выберем Page, т.к. нам требуется настроить вид именно целой страницы. Затем в разделе Основные настройки формы щелкните по значению нет свойства Заголовок. Внизу появится текстовое поле, куда можно вписать заголовок, который будет отображаться на странице. Впишите туда фразу "Новое на сайте". Обратите внимание на кнопку Переопределить. Если ее не нажимать, то изменения затронут все представление, а не только Page. В данном случае нас это устраивает. Поэтому сразу нажимаем на кнопку Обновить отображение по умолчанию.

Установите стиль в значение Таблица, щелкнув по фразе Без форматирования.

На странице надо что-то отображать. Это что-то определяется с помощью полей. Поле можно представить как определенную часть каждой статьи (материала). Например, поля — это заголовок, дата создания, автор, термин таксономии, к которому относится статья и т.д.
Щелкните по плюсу рядом с разделом Поля. Внизу появится список флажков — это поля, которые могут быть отображены в виде. Выберите следующее:

  • Материал: Заголовок,
  • Материал: Дата создания,
  • Материал: Содержимое.

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

В разделе Настройка страницы адрес указан как frontpage. По умолчанию главная страница имеет адрес node. Можно либо поменять в настройках сайта, что главная страница будет не node, а frontpage. Либо непосредственно на странице редактирования представления поменять frontpage на node. Предпочтем второй вариант. После этого сохраните представление и посмотрите на главную страницу сайта (не уходите со страницы редактирования вида, лучше откройте вторую вкладку). Страница преобразилась, но вряд ли мы хотели именно такого вида: дата идет впереди заголовка, заголовок ничем не выделяется, а статьи представлены целиком. Продолжим редактировать вид Page представления.

Нажмите на кнопку с двумя стрелками рядом с разделом Поля. Ниже появится форма Перестроить поля. Поднимите заголовок выше даты создания, после чего нажмите на кнопку Обновить. Теперь щелкните поле Материал: Заголовок, в форме его редактирования установите флажок Заменить выводимое полем значением и пропишите в многострочном текстовом поле <h3>[title]</h3>. Кроме того установите флажок Связать это поле с его материалом. Сохраните изменения. Щелкните по полю Материал: Содержимое и в его настройках установите флажок Установить для этого поля максимальную длину. Пусть максимальная длина будет равна 400 символам.

Обратите внимание, что внизу вы можете видеть, как будет теперь выглядеть главная страница.

В основных настройках вида нажмите на кнопку с шестеренкой рядом со свойством Стиль. Поменяйте колонку даты создания на Материал: заголовок.

В свойстве Элементов на страницу укажем значение 6. Сохраните представление и посмотрите, как выглядит главная страница.

Ранее мы решили кроме прочего организовать коллекции материалов по месяцам. Для этого пришлось создавать подшивку. На самом деле куда правильней использовать специальное представление. Поскольку многие сайты коллекционируют материалы по месяцам, то модуль Views уже включает в себя представление arсhive. Включите его и перейдите на страницу редактирования.

У вида Page представления archive меняем стиль на табличный и добавляем следующие поля:

  • Материал: Заголовок,
  • Материал: Дата создания,
  • Пользователь: Название,
  • Материал: Тип
  • Таксономия: Все термины.

Устанавливаем последовательность полей такую, как приведена в списке. Сохраняем вид.

Откройте страницу Блоки системы Drupal. В отключенных блоках появился новый блок Archive list. Разместите его на сайте вместо блока Архив подшивок. После этого посмотрите, как выглядят архивы месяцев.

Немного подредактируем представление. Щелкните по полю Материал: Заголовок и установите флажок Связать это поле с его материалом. Для Пользователь: Название в метку впишите слово "Автор", а также снимите флажок Ссылаться на пользователя. В основных настройках свойству Элементов на страницуприсваиваем значение Не ограниченно (для этого следует прописать 0). Сохраните представление и посмотрите страницы архива.

Итак, модуль Views предоставляет возможность организовать материалы сайте не стандартным образом. Хотя в данном уроке мы использовали готовые представления, ничего не мешает вам создавать собственные. Следует знать, что возможности модуля Views намного превосходят рассмотренные на этом уроке.

Создано