Вывод данных с группировкой во views drupal

Типичная проблема при использовании модуля views — как вывести результат группировки, т.е. столбец вроде COUNT(*).

Это можно сделать штатными средствами модуля views. Для задачи вроде вывода под-итогов, сумм по сгрупированным строкам — смотрите модуль views_calc.

Итак, вводная по задаче:

  • вывести количество публикаций (node), сгруппированное по значению термина таксономии.
  • Таблицу отсортировать по имени термина (taxonomy.name).

У меня в задаче были публикации типа lot и использовался словарь таксономии «Вид разрешенного использования». Как фильтровать контент по типу публикаций, я думаю, рассказывать не нужно.

Создание полей views

Создайте views на базе элементов content с форматом представления «Table», это автоматически переведет view в режим использования полей (fields).

Нам требуется всего два поля — поле публикации, связанное с таксономией, и node.nid.

Включите use aggregation в advanced настройках представления.

Возле каждого из полей появится ссылка Aggregation settings, где для NID выберите COUNT, а для поля таксономии оставьте группировку результатов.

На этом этапе у вас уже должна получиться таблица с подсчетом количества публикации по определенному термину.

Сортировка по имени термина

Сейчас у вас подключено поле таксономии, которое содержит tid, а сортировку нужно сделать по свойству термина name, которого пока в запросе нет.

Через настройки advanced добавьте связь (Relationships -> add) с объектом «taxonomy terms on node«.

Здесь выберите словарь и обязательно поставьте галочку — Require this relationship.

Теперь в секции «сортировка» (Sort criteria) можно добавить поле Taxonomy term: Name. Что позволит сортировать по названию термина.

Мало букафф? Читайте есчо !

Как получить текущий id node в drupal из кода программы?

Ноябрь 8, 2016 г.

Можно использовать анализ адреса хранимый Drupal в $_GET['q'] и/или анализ частей адреса, получаемых функцией arg(N). Оба варианта по сути делают одно и тоже - анализ внутреннего адреса, который для публикации имеет вид: node/%NID%. Я использую функцию ...

Читать

Показ анимации, что идет загрузка, для обновления контента views в режиме ajax

Май 22, 2021 г.

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

Читать

Получить имя поля ключа entity в Drupal 7

Апрель 6, 2021 г.

У меня эта задача возникла при работе с формами, где формы содержат поля '#entity' и '#entity_type'. Нужно было найти универсальный способ прочитать ID объекта, т.к. для каждого объекта имя этого поля может отличаться (для node - nid, для file - fid и ...

Читать

Ctools modal закрытие при клике вне модального окна

Июнь 28, 2019 г.

Привычное для пользователей поведение модального окна изначально не реализовано в ctools. Давайте добавим немного js, реализующего нужный функционал. Код универсален для модального окна создаваемого ctools, т.к. привязан к верстке окна: [crayon-68b068b3bd112172495306/] ...

Читать
 

Комментарии к «Вывод данных с группировкой во views drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: