Введение и обзор демо-сайта

Что такое модуль Views (Представления)

Views (Представления) - первый по популярности и частоте использования модуль в Drupal 7, именно по этой причине было решено включить его в ядро слeдующей версии Drupal которая выйдет в 2014 году - Drupal 8. Этот модуль используется для организации и вывода содержимого на сайте самым различным образом.

Рассмотрим несколько примеров применения модуля Views (Представления):

  • Вывод содержимого в виде списка, таблицы, сетки и т.д.
  • Создание Rss ленты
  • Создания слайд-шоу
  • Вывод случайного материала или термина
  • Создание удобных администраторских разделов
  • Фильтрация и сортировка содержимого
  • Вывод связанного содержимого
  • Создание архивов публикаций
  • Вывод содержимого по категориям

Еще одной положительной особенностью модуля Views (Представления) является то, что существует множество модулей расширяющих его возможности. Далее в этом курсе мы рассмотрим несколько таких примеров.

Обзор демо-сайта Film DB.

Изучение модуля View (Представления) было бы невозможно без сайта на котором можно было бы потренироваться. Поэтому, специально для этой цели, был подготовлен демо-сайт Film DB, который представляет из себя базу фильмов (аналог сайта imdb.com).

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

Ссылка на скачивание: FilmDB

Логин и пароль администратора: admin/123

Список основных модулей которые были использованы для создания демо-сайта:

  • Administration menu - вспомогательный модуль предоставляющий удобное меню администратора, заменяющее стандартную панель Drupal
  • Date - модуль предоставляющий тип поля Date и Date API. На сайте он используется для полей Дата рождения типа материалов Актёр и Год выпуска типа материалов Фильм.
  • Entity Reference - модуль предоставляющий тип поля Entity Reference. На сайте используется для создания поля В ролях.
  • Fivestar - модуль предоставляющий тип поля Fivestar рейтинг. На сайте используется для создания поля Оценка.
  • Internationalization - набор модулей расширяющий возможности Drupal к созданию мультиязычных сайтов. Без этого модуля не обходится ни один русскоязычный сайт на Drupal.
  • Pathauto - модуль для автоматической генерации синонимов URL.
  • Transliteration - вспомогательный модуль для транслитерации строк.
  • Views - с этим модулем мы будем разбираться в этом курсе.

Структура демо-сайта

Словарь "Жанр"

Словарь таксономии Жанр

Для хранения жанров используется словарь таксономии Жанр.

Словарь "Страны"

Словарь Страны используется для хранения стран выпуска фильмов.

Словарь таксономии Страны

Тип материалов "Актёр"

Тип материалов Актер

На сайте будет также храниться информация об актерах. Для этого используется тип материалов Актёр, который имеет следующие поля:

  • ФИО - переименованное стандартное поле Заголовок (Title) для хранения ФИО актера.
  • Биография - переименованное поле Body для хранения биографии актера.
  • Фото - поле типа Изображение, используется для хранения фотографии актёра.
  • Дата рождения - поле типа Date для хранения даты рождения актера.

Тип материалов "Фильм"

Тип материалов Фильм

Конечно же основным является тип материалов Фильм состоящий из следующих полей:

  • Название - переименованное стандартное поле Заголовок (Title) для хранения названия фильма.
  • Описание - переименованное поле Body для хранения описания фильма.
  • Изображение - поле типа Изображение, используется для хранения постера фильма.
  • Жанр - поле типа Ссылка на термин, ссылающееся на словарь Жанр, для хранения жанра фильма.
  • Год выпуска - поле типа Date для хранения года выпуска фильма.
  • Страна - поле типа Ссылка на термин, ссылающееся на словарь Страны, для хранения страны выпуска фильма.
  • Оценка - поле типа Fivestar рейтинг для хранения зрительской оценки фильма.
  • В ролях - поле типа Entity Reference, ссылающееся на тип материалов Актер, для хранения актеров сыгравших роль в фильме.

Если мы перейдем на главную страницу сайта, то увидим довольно унылую картину - стандартный список всех опубликованных материалов, отсортированный по дате публикации.

Стандартный вид сайта

На протяжении курса мы постараемся исправить эту картину с помощью модуля Views (Представления).

В следующем уроке мы создадим первое представление и рассмотрим его структуру.

Поделись с друзьями:

Комментарии

Спасибо за курс. пытаюсь установить демо-сайт. создал базу данных, назвал filmdb, и еще одну такую же с именем database, импортировал туда выкладеное, выгрузил файлы, запускается процесс инсталяции. что не так? нужно править default.settings?

Денис здравствуйте, подскажите пожалуйста, когда создаешь представление (сетку например ) с какими то нодами, и после вывода на сайте наводишь на эти элементы и нет шестеренки (ссылка на быстрое редактирование материала), только на редактирование представления или ноды. Как выводить на каждую ноду эту "шестеренку", я понимаю что можно вывести просто ссылку на редактирование материала, но ее надо стилизовать, как сделать это стандартную быструю ссылку при наведении ?

Для этого есть готовый модуль Custom Contextual Links.

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

Значит надо писать свой модуль для этого.

как это инсталировать на denwer ?

Как сделать на своем сайте чистые ссылки? Так же как это делается в CMS drupal 7 при помощи модуля Pathauto. Но CMS я не использую!

Посмотрите как делает это Drupal. В .htaccess все запросы перенаправляются в файл index.php с помощью mod_rewright. В этом вся магия.

Денис, здравствуйте! Огромное спасибо, за ваши уроки. Скажите, а как импортировать приготовленный сайт в Denwer?

Здравствуйте, Денис. Уроки хорошие, подробные, спасибо за Ваш труд! Скажите, Вы когда-нибудь работали с модулем referral? Я хочу при помощи этого модуля сделать обучающий сайт для партнеров, и реф-ссылки, по которым регистрируются новички, должны в профиле отображать их "Пригласителей" или родителей ссылок.
Теперь пытаюсь при помощи модуля Views настроить так, чтобы приглашенный видел пригласителя. И никак не выходит. Может чего подскажите, можно ли такое осуществить?

С этим модулем не работал.

Спасибо за ответ. А может слышали о модулях, которые могут реализовать требуемое: рефер = реферал (и чтобы каждый видел профиль друг друга)...

Можно использовать модуль Entity reference. Добавить в профиль поле "Рефералы" которое будет ссылаться на пользователей которые и будут рефералами.