4.5.2. Views exposed filters. Доска объявлений на Drupal 8.

Модуль Views позволяет не только задать фильтр и вывести материалы, но и позволяет изменять эти фильтры динамически. Давайте создадим небольшую доску объявлений недвижимости с помощью модуля Views.

Для того чтобы выводить объявления, нам нужно сначала создать тип материала Объявление. Для этого зайдем Структура - Типы материалов - Добавить тип материала:

drupal 8 ads

Теперь для нашего типа материала нужно добавить поля: Количество комнат, цена, адрес, телефон, имя. Заходим во вкладку Управление полями типа материала Объявление:

друпал 8 вьюс

Для количества комнат нужно выбрать тип Список (текст):

друпал 8 поля

Дальше нужно выставить какие типы квартир бывают:

drupal 8 fields

Также нужно добавить Цену, для этого выбирайте тип поля Число (целое). В настройках поля Цены укажите суффикс, чтобы после цены шло наименование валюты:

друпал 8 поле суффикс

Поля адрес, телефон и имя нужно создать с типом Текст (plain).

Теперь когда у нас есть поля давайте создадим новый вью Объявления (Структура - Представляения - Добавить новое представление):

drupal 8 views

 

 Теперь давайте добавим фильтр Количество комнат и поставим вот эту галочку для exposed filters:

друпал 8

Это позволит вывести вот такой фильтр на странице объявлений:

drupal 8

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

drupal 8

Вы также можете добавлять любые другие поля Объявлению и выводить их как Exposed filters. Давайте добавим еще и цену в exposed filters.

drupal 8

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

Также помимо exposed фильтров, мы можем делать и exposed сортировку, например по цене, давая возможность пользователям выбирать сортировку по убыванию цены или по возрастанию:

drupal 8

 

 Теперь у нас есть фильтр для объявлений, который правда предстоит еще темизировать.

друпал 8

О том как темизировать подобные формы вы сможете прочитать здесь:

http://drupalbook.ru/drupal/form-api-drupal-sozdanie-form-na-drupal

Комментарии

Добавить комментарий

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook
(If you're a human, don't change the following field)
Your first name.
(If you're a human, don't change the following field)
Your first name.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.