Изучаем модуль Views Drupal 7 (уровень 1.2)

Сложность: 
1

Модуль Views - это самый популярный модуль среди тех, что находятся на Drupal.org. В интернете недостаточно информации по освоению данного модуля. Давайте вместе попробуем изучить азы работы с этим модулем, и заглянуть в каждую ссылку, которая есть в настройках модуля Views.


Установка

Установка модуля Views ничем не отличается от установки других модулей. Для этого нужно:

  1. Скачать модуль ctools, он находится здесь. Данный модуль содержит необходимые инструменты для работы модуля Views.
  2. Скачать модуль Views, который находится здесь.
  3. Скопировать папки с модулями (они находятся в архивах с модулями) в папку, где должны находится модули Drupal, а именно “/sites/all/modules/”.
  4. Пройти на страницу управления модулей и включить следующие модули: Chaos tools, Views, Views UI. Ссылка находится на главной административной странице (Administration). Для примера, эта ссылка будет “example.com/admin/modules”.

Если у Вас есть проблемы с установкой, советую проверить все по пунктам, или же просмотрите видео Установка модулей в Drupal 7.

 

Первое знакомство с модулем

Структура модуля Views построена достаточно понятно. Как только Вы установили и включили модуль, у Вас уже должна быть доступна страница со списком всех Вьюшек. Вьюшка - это неделимая единица модуля. Можно сопоставить ее с клеткой в организме человека, то есть клетку мы больше уже поделить никак не сможем. Аналогичная ситуация и с вьюшкой. Также, в переводах можно найти слово “Представление”. Если Вы нашли такое слово, то не пугайтесь, представление - это тоже самое что и вьюшка.
Список вьюшек находится на странице “Administration / Structure / Views”. Для примера, ссылка на список будет следующая: “example.com/admin/structure/views”.
На странице вы увидите уже готовые шаблоны вьюшек, которые были в комплекте вместе с модулем Views. Данные примеры находятся в выключенном состоянии. Если вьюшка выключена, то она находится в списке, ее можно редактировать, но просмотреть ее работу на сайте невозможно. 
У меня страница со списком вьюшек выглядит так:


Тонкая настройка

Сразу же после установки я рекомендую включить пару опций, которые откроют нам некоторые возможности модуля. Данные опции необязательны, они всего лишь дают нам дополнительные возможности.
Страница настроек модуля находится во вкладке Settings, которая размещается на странице списка вьюшек (сверху справа), найти ее можно и по ссылке “/admin/structure/views/settings”. На странице настроек модуля Views нужно проставить 2 галочки, это “Always show the master display” и “Show the SQL query”.
Опция “Always show the master display” будет показывать нам стандартный дисплей по умолчанию (про дисплеи еще будем говорить). Опция “Show the SQL query” показывает нам запрос к Базе Данных.

 

Создание вьюшки

Вернитесь назад на список всех вьюшек. Перед началом таблицы со списком будет ссылка “Add new view”. Нажмите на эту ссылку.
Перед Вами появится форма:

Разберем каждое поле формы.

View name
Здесь записывается имя самой вьюшки. Когда Вы начнете вводить текст в это поле, то справа увидите заполнение машинного имени вьюшки. Машинное имя необходимо для каждой вьюшки. Оно служит для того, чтобы в базе данных вьюшка была уникальной.

Description 
По выбору Вы можете добавить описание к своей вьюшке. Если нажмете на галочку, то откроется дополнительное поле.

Show
Эта опция имеет множество вариантов. Одним словом, с помощью модуля Views можно выводить почти все. Например, если Вы хотите выводить материалы, то нужно выбрать из выпадающего списка пункт Content. Далее предоставляется выбор типа материала (оf type), можно выбрать термины таксономии, которые используются в материалах (tagged with) и можно выбрать тип сортировки.

Create a page 
По умолчанию эта галочка отмечена, поэтому будет создана страница с вьюшкой (списком того, что выводится). Следовательно, странице нужно добавить заголовок, URL на страницу. Дальше стоит обратить внимание на типы отображения списков (Display format), о которых будем говорить позже. Справа от поля Display format можно выбрать то, что Вы хотите выводить. По умолчанию выводятся тизеры. Тизер - это краткое содержимое материала. Отображение содержимого тизера можно редактировать на странице настройки типа контента. 

Если Вы не знакомы с работой над типами контента в Друпал, рекомендую просмотреть следующее видео Типы материалов и поля в Drupal 7.

Но для вывода вьюшки лучше выбрать из выпадающего списка опцию “fields”, то есть выводить только поля. Данная опция даст динамичность в настройке вывода полей и мы будем создавать вьюшку этой опцией.
Далее, в поле “Items to display” вы можете задать количество выводимых едениц на странице. К примеру 10 материалов на страницу. Галочка “Use a pager” отвечает за включение пейджера на странице вьюшки. Галочка “Create a menu link” разрешает нам сразу же добавить нашу страницу вьюшки в выбраное Вами меню. Отметка “Include an RSS feed” создает еще дополнительный РСС фид для Вашего списка (так званая лента новостей, которая может читаться специальными сервисами или программами). Вы можете задать ссылку на вывод этого рсс фида, и также стиль вывода.

Create a block
Эта опция создает дисплей типа “блок”. Здесь вы можете задать Заголовок блоку, настроить стиль вывода вьюшки, выбор в выводе. Еще здесь присутствуют настройки пейджера.

Мы будем создавать страницу. Перед сохранением, форма создания новой вьюшки выглядит так:

Здесь было проделано несколько операций:

  • Прописано название вьюшки как “Acticle”;
  • Из типов контента выбран пункт “Acticle” (данный тип контента по умолчанию есть в Друпал после установки);
  • В поле “Display format” выбран формат “Unformatted list” и выводятся поля (fields).
Больше задавать здесь ничего не нужно. Остальные поля, такие как машинное название, заголовок страницы, автоматически подставятся относительно имени вьюшки.
Остается нажать только кнопку “Continue & edit”, если вы хотите продолжить править вьюшку. 
Если нажмете кнопку “Save & exit”, то вьюшка сразу сохранится и Вы перейдете на страницу со списком представлений.
После нажатия кнопки, Вы сразу же переходите на страницу редактирования вьюшки.
 
 
Элементы редактирования
 
Если вы включили опции “Always show the master display” и “Show the SQL query”, тогда мы сразу же окажемся на дисплее “Master”. Поскольку мы создали страницу, то нажимаем на кнопку “Page”. Кнопка находится в строке под заголовком “Dipslays”.
Далее мы будем работать с элементами, которые описаны на картинке по цифрах. Сама картинка:
 

Пройдемся по управляющем элементам:

Заголовок (1) - слева от цифры 1 прописан заголовок нашей вьюшки, а в скобках прописан тип вьюшки. Здесь указан тип “Content”, следовательно, вьюшка относится к контенту и выводит контент, то есть материалы.
Кнопки (2) - здесь мы можем сохранить нашу вьюшку или же отменить ее изменение. В данном случае, если мы нажмем кнопку “Cancel”, то вьюшка у нас даже не создастся, потому что мы ее еще ни разу не сохраняли.
Дисплеи (3) - перед Вами 2 дисплея, это дисплей Master и Page. Дисплей Master ничего на сайте не выводит. В нем находятся настройки по умолчанию для всех дисплеев. Еще есть дисплей Page.
Add (4) - при нажатии Вы увидите выпадающий список, который предоставляет выбор типа нового дисплея. По умолчанию во вьюшке есть несколько типов дисплеев, а именно:
  • Attachment - обычный дисплей, который можно прикрепить к другим дисплеям даже к той же самой странице. Для примера, у нас есть дисплей со страницей, которая выводит все статьи, но перед страницей нужно вывести отдельный блок популярных материалов. Мы можем создать дисплей Блок, и потом разместить его перед выводом страницы, но это не правильно. Лучше, в такой ситуации, создать Аттачмент, и прикрепить его перед выводом дисплея, со страницей.
  • Block - данный тип дисплея создает блок, после его создания и сохранения вьюшки, блок можно увидеть на странице списка блоков.
  • Feed - создает вьюшку, которая будет выводить страницу в формате xml. Например, здесь можно выводить ленту новостей (РСС фид).
  • Page - дисплей, который выводит страницу.
Опции для вьюшки (5) - при нажатии на выпадающий список, открывается множество опций. Здесь доступны следующие функции:
  • edit view name/description - открывает попап, для редактирования названия вьюшки, тегов и описания. Обратите внимание на то, что машинное имя вьюшки уже не поменяешь
  • analyze view - запускает анализ вьюшки на присутствие разных ошибок.
  • clone view - создает копию всей вьюшки. Особенно это полезно, когда нужно сделать резервную копию вьюшки, перед тем, как Вы собираетесь изменять много важных опций.
  • export view - если Вы нажмете на эту ссылку, то перед Вами откроется окно, с исходным кодом вьюшки. Это очень полезно, когда вам нужно вьюшки из одного сайта перенести на другой. Также, на списке вьюшки есть ссылка Импорт. В импорте Вы указываете данный код и сохраняете.
  • recorder displays - здесь можно удалить дисплеи и/или изменить порядок их размещения. 

Название дисплея (6) - тут меняется название дисплея. Хорошая опция для того, чтобы сделать вьюшку более понятной как для себя, так и для других людей.
Опции для дисплея (7) - обратите внимание, что каждая опция заканчивается названием дисплея. Попробуйте изменить название дисплея (6), и пункты для опций дисплея изменятся.

  • view Page - опция является ссылкой для перехода на страницу просмотра вьюшки. Стоит отметить, что если Вы вьюшку еще не сохраняли после ее создания, то есть на форме создания нажали кнопку “Continue & edit”, тогда страницы, которую создает вьюшка - не будет.
  • clone Page - клонирует дисплей, то есть создает его копию в этой в текущей вьюшке.
  • delete Page - удаляет дисплей. Если Вы его удалите, то он будет зачеркнутый, и пропадет только после того, как будет сохранена вьюшка.
  • disable Page - выключает дисплей, делает его неактивным, и на сайте он нигде не будет задействован.

Заголовок страницы (8) - здесь указывается заголовок и еще его можно изменить.
Настройки формата вьюшки (9) - без дополнительных модулей есть всего 5 форматов:

  • Grid - вывод таблицей, где каждая ячейка табилцы будет материал (или же то, что выводим).
  • HTML List - вывод материалов списком, используя теги ol или ul и тег li.
  • Jump menu - выводит выпадающий список (селектлист) с выбором материала.
  • Table - вывод таблицы, где каждое поле вьюшки будет в отельной колонке.
  • Unformatted list - неформатированный список, результаты вьюшки будут обрамлены в div теги.

Еще у каждого формата есть собственные настройки. Их довольно много, потому это будет Вашим домашним заданием - попробовать использовать каждый формат, и посмотреть его настройки.
Поля (10) - это одно из важных составляющих вьюшки. Сюда можно добавлять вывод полей, можно удалять поля из вывода. Также у каждого поля есть свои настройки.
Критерии фильтрации (11) - здесь можно задавать, что именно выводить. Сейчас на картинке указано, что выводится только опубликованный контент. Существует много критериев фильтрации. Здесь можно добавить фильтрацию по типу материала, по пользователю, даже можно выводить только выбранные материалы.
Критерии сортировки (12) - здесь можно задавать то, как будет сортироваться список. На картинке есть только один критерий - это сортировка по дате публикации по убыванию. То есть, сначала будут выводиться новые материалы. Здесь разрешено использовать несколько сортировок. Сортировок тоже вполне достаточно.
Настройки страницы (13) - эти настройки уникальны для типа дисплея Page. Сюда можно указать ссылку на страницу (сейчас она указана как /acrticle). В пункте “Menu” есть возможность добавить ссылку в любое меню, и задать доступ к странице. Доступы можно дать как по ролях, так и по определенному доступу. Сейчас вьюшку могут просматривать пользователи, которые имеют доступ к просмотру опубликованного материала.
Header и Footer (14) - здесь можно добавить какой-то текст, или даже еще вьюшку, которая будет в Хедере (то есть, вверху вьюшки) и в Футере (внизу вьюшки).
Pager (15) - в этом блоке находятся настройки к пейджеру. Стоит заметить, что есть всего 2 типа пейджера: это Full (полный и большой) и Mini (маленький). Также можно настроить количество выводимых на странице единиц.
Расширенные настройки (16) - в основном, здесь находятся настройки (одни из дополнительных настроек дисплея). С ними мы будем знакомится в следующих статьях. Но здесь стоит отметить такой пункт как “No results behavior”. Тут мы можем добавить текст, который будет выводится, если список у нас пуст. Например, если материалов нет, можно вывести надпись “Раздел ожидает наполнения”.
Автоматический предпросмотр результатов (17) - если галочка включена, то ниже мы сразу же увидим изменения, которые применили.
Обновить предпросмотр (18) - если опция автоматического предпросмотра выключена, то нужно нажимать на эту кнопку, или если вы создали новый материал, и сразу же его хотите увидеть.

Обратите внимание, что ниже выводиться список. Если у Вас списка не наблюдается, то здесь стоит убедится, есть ли на сайте материалы, и нужно удостовериться, что критерии фильтрации действительно должны что-то выводить. 

 

На этом все. Мы сделали анализ всех элементов вьюшки. На сайте есть видео, где так же описывается работа с данным модулем, рекомендую к просмотру:
Знакомимся с модулем Views. Часть 1
Знакомимся с модулем Views. Часть 2

Пробуйте самостоятельно поработать с выводом списков, попробуйте вывести с помощью модуля Views категории определенного словаря такосномии, последние новости, выведите это все в таблице, или же форматов вывода Grid.

Удачи Вам, и всегда сохраняйтесь! 

 

Рассказать друзьям: