view c группировкой по термину и лимиту в рамках термина

Главные вкладки

Аватар пользователя golikoffartem golikoffartem 16 декабря 2009 в 19:01

Добрый вечер. Очень надеюсь на помощь!
Задача следующая: есть некоторый тип нодов с таксономией, в данном случае, новости (а таксономия - это категория новостей).
Нужно вывести список категорий новостей и по 5 последних новостей в каждой из них.
Вариант создавать по view на каждую категорию плох, т.к. категории меняются (добавляются и удаляются). Соответственно, panels тоже не подойдёт по той же причине.
Помогите, пожалуйста.

Комментарии

Аватар пользователя edhel edhel 16 декабря 2009 в 21:17

Проще сделать page с форматом ввода php и забабашить цикл по категориям и вложенный цикл по первым 5 нодам из категории. Юзаем taxonomy_get_tree и taxonomy_select_nodes.

Аватар пользователя golikoffartem golikoffartem 17 декабря 2009 в 10:10

Спасибо...
taxonomy_get_tree сработала, а вот taxonomy_select_nodes не хочет работать((
SQL запрос вроде корректный, но он не выполняется с пустым результатом, хотя должен (phpmyadmin) c непустым.

Аватар пользователя golikoffartem golikoffartem 17 декабря 2009 в 11:21

Итак, решил проблему.
Поделюсь.
Сделал вид, который принимает аргумент. Создал блок. Переопределил для него шаблон:

<?php
$terms = taxonomy_get_tree(номер словаря, 0, 0);

foreach ($terms as $term) {
echo $term->name; // <- термин
$v = views_get_view(название вида); // <- необходимо в цикле каждый раз заново получать вью, иначе результаты будут одинаковыми
echo $v->preview('default', array(0 => $term->tid)); // <- вид для термина
}

Аватар пользователя edhel edhel 17 декабря 2009 в 11:34

"golikoffartem" wrote:
Создал блок. Переопределил для него шаблон:

Чё-то я тут не понимаю... что имеется виду под блоком и шаблоном.

Аватар пользователя INTALL INTALL 7 сентября 2012 в 14:24

Views Grouping Row Limit | drupal.org
Тоже всё грузит походу никакого лимита там и нет! Грудит все материалы. Неиспользовал так как запрос тянет все ноды - это работает но не правильно поэтому я лучше модуль напишу!