Каталог товаров на Drupal 7 и Views. Часть 4 - Настраиваем критерии фильтрации.

image

24.04.12
Comments 3

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

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

Ну что поехали. Откройте созданное нами представление, мы называли его «Телефоны».

Давайте сразу создадим новое отображение. Для этого щелкните на кнопку Add (добавить) и из раскрывающегося списка выберите «Добавить страницу».

Views

Измените отображаемое название представления, назовите его «Nokia».

В разделе «настройки страницы» выберите пункт «путь» и укажите адрес нашего отображения (views/nokia), этот путь еще нигде не существует, мы создаем его в настоящий момент.

Добавим пункт меню на станицу каталога товаров от производителя Nokia, для этого кликните на ссылку «без меню» напротив пункта настроек «меню» и произведите следующие настройки:

  • Тип: обычный пункт меню
  • Заголовок: Nokia
  • Меню: Навигация

Нажмите применить.

Затем найдите в настройках представления пункт «Критерии фильтрации». Нажмите на кнопку добавить. Обратите внимание, что нужно применять параметры не для всех отображений, а конкретно для редактируемого. Для этого в настройках есть соответствующий пункт:

Views

Теперь из предложенного нам списка выберите поле «Содержимое: Категория (field_category)», нажмите на кнопку применить.

Далее в настройках дополнительных параметров нам следует выбрать способ выбора, выбирайте «выпадающий».

Следующий шаг «настройки критериев фильтра», выберите из выпадающего списка модель телефона «Nokia» и нажмите на кнопку применить.

Views

Теперь если вы пройдете на страницу сайта, то увидите что в меню, появился новый пункт, который ведет на страницу каталога телефонов Nokia.

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

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

Комментарии

DivaDii 11.05.12

Уважаемый Серега!
Кое-что я уже с помощью Вьюсов сделала. Получается. И нравятся эти фокусы.

Но ещё не всё получается, что хочется.
Помогите разобраться с критериями фильтрации.
Делаю Блок во Вьюсах.
Причем, мне надо, чтобы конкретное содержимое этого блока соответствовало конкретному материалу.
Копаю критерии фильтрации.
Если не указывать лишних критериев (у меня есть критерий "опубликовано" и "тип материала"), то тогда блок выводится, но берет либо последний материал, либо первый.
Пробую добавлять критерий по Nid (вроде бы правильно?)

Не пойму, какой надо ставить аргумент.
Nid равно node
Я не уверена тут даже в формулировке и терминологии. Но думаю, что Вы поймете.

Пробовала кучу вариантов:
nid
node
$node
node.nid
nid.node
и так далее.... с десяток разных вариантов перепробовала.
Но во всех случаях - блок просто перестает выводиться.
SQL-запрос получался следующий:

SELECT node.nid AS nid, 'node' AS field_data_field_avtor_node_entity_type, 'node' AS field_data_field_kniga_node_entity_type, 'node' AS field_data_field_tags_node_entity_type
FROM
{node} node
WHERE (( (node.status = '1') AND (node.type IN ('aphorizm')) AND (node.nid = 'node') ))
LIMIT 1 OFFSET 0

Искала уже очень во многих местах. Замучилась абсолютно.

А может быть, Вы сделаете какой-то очередной урок на эту тему? - типа: "Использование аргументов в критериях фильтрации". или как-то так.
Заранее спасибо.

DivaDii 11.05.12

Вдогонку. Ваши уроки по Друпалу очень важны и нужны.
Написано толково, понятно, внятно, подробно.
Продолжайте, пожалуйста!

Сергей 16.03.13

А как бы к этому фильтру прикрутить поле "сравнить выбранные"?

Комментировать