Есть словарь такой структуры:
Словарь
--Термин 1
--Термин 2
--Термин 3
Нужно создать страницу со всеми материалами из этого словаря такой структуры:
Термин 1
Материал термина 1
Материал термина 1
Материал термина 1
Ссылка на все записи этого термина
Термин 2
Материал термина 2
Материал термина 2
Материал термина 2
Ссылка на все записи этого термина
Термин 3
Материал термина 3
Материал термина 3
Материал термина 3
Ссылка на все записи этого термина
Как сделать такую группировку? Тремя отдельными блоками которые выводятся только на этой странице или есть другой способ?
Используется Drupal 7 и Views 3.0
Комментарии
по моему нужно просто сделать вывод соответствующих полей, но как я помню можно выводить либо материал, либот словарь и термины, всё вместе вроде как не получится
Понадобилось решить схожую задачу но для Д6+views2 может кто то сможет натолкнуть на мысль куда рыть?
Это для семерки, шестерку не пользовал.
1 В материале должно быть поле с нужным словарем. И у нод значения должны быть заданы.
2. Создать View
3. В выводимые поля Fields добавить поле из пункта 1 (сделать его скрытым).
4. Задать формат вьюва Format: HTML list.
5. В настройках формата вьюва Format: HTML list | Settings задать группировку по указанному полю Grouping field.
6. Отсортировать view Sort criteria сначала по полю из пункта 1 и затем по остальным желаемым полям.
7. Если сортировать нужно НЕ по алфавиту терминов, а по их весу, то добавляем связь со словарем Relationships по полю из пункта 1. И в шестом пункте устанавливаем сортировку сначала по весу термина.
Сделал все как Вы советовали но не решилась основная проблема ограничения количества материалов определенного термина.
Допустим при данной схеме:
Словарь
--Термин 1
--Термин 2
--Термин 3
Термин 1
Материал термина 1
Материал термина 1
Материал термина 1
Ссылка на все записи этого термина
мне нужно выводить только 3 Материала термина.
Если я ограничиваю вывод с помощью Отображать указанное количество элементов то я не получаю следующую подкатегорию Термин 2 и ее материалы
Как ограничить вывод количества материалов?
Проблема решилась с помощью модуля views_limit_grouping http://drupal.org/project/views_limit_grouping
Повторюсь решал для D6
После установки модуля, во Views в Настройки стиля появится дополнительный стиль вывода Grouping Field (with Limit) в его настройках выбирается поле группировки и количество элементов для показа
Больше часа бился, как об стенку горохом ))
Структура словаря схожа с вашей: один словарь и десяток терминов.
Пытаюсь вывести на страницу из каждого термина по одной последней статье.
Выбираю стиль Grouping Field (with Limit) с настройками "Items to display:1" и "Offset:0".
"Row style: Node"
"Items to display: Unlimited"
Остальные настройки не трогал. Результат - выводится всего одна статья. Что не так?
"Row style: Node" у меня установлен в Поля и группировка стоит по термину
Bober спасибо. Помог.
Есть похожая задача :
Словарь (таксонометрии )
--Термин 1
--Термин 2
--Термин 3
Ввод данных осуществляется через тип материала вида
Термин 1
Тип материала 1: содержание 1
Тип материала 2: содержание 2
Тип материала 3: содержание 3
Нужно создать страницу со всеми материалами из этого словаря такой структуры:
Термин 1
Тип материала 1: содержание 1
Тип материала 2: содержание 2
Тип материала 3: содержание 3
Термин 2
Тип материала 1: содержание 1
Тип материала 2: содержание 2
Тип материала 3: содержание 3
те типы материала повторяются и должны выводиться заголовком. Содержание - это некий текст, который зависит от термина
у меня же разное содержание разьезжается по view. не собирается под одним общим заголовком "термин"...
На простом примере
есть словарь таксономии
Игрушки:
-мягкие игрушки
-конструктора
-компьютерные игры
Есть представления
-мягкие игрушки
--состав
--на кого рассчитано
--производитель
--рекомендации использование
-конструктора
--состав
--на кого рассчитано
--производитель
--рекомендации использование
-компьютерные игры
--состав
--на кого рассчитано
--производитель
--рекомендации использование
Пришла учительница Марь Иванна и написала статью про то как полезно играть плюшевым мишкой.
Пришел геймер Вася и написал про игровую фирму Blizzard
Пришел трудовик Петрович и написал привила пользование отверткой.
Т.е база заполяется в разнобой.
А нам надо чтобы пришел Вася Васечкин и мог все почитать только о конструкторах к примеру....
Это, конечно, возможно сделать используя аргументы (контекстные фильтры) и выводя PHP-кодом или средствами вьюс в полях основной вьюхи другие вьюс с аргументами, но шибко заморочено. Я бы на Вашем месте пересмотрел структуру сайта. Судя по тому что вы написали вам разные типы материалов не нужны. Сделайте один тип "Статья", и ещё один словарь терминов, который будет указывать тип статьи. А потм воспользовавшись уже приведенным решением делайте группировку, её же можно сделать не один раз средствами самого вьюс.
Доброго времени суток. Уже сутки бьюсь над похожей проблемой, но у меня задача сложнее....
Ставим это
Вьюхой умете пользоваться? создаете вьюху материалов с конткстным фильтром по ИД термина и вставляете ее как поле, используя вышеуказанный модуль в представление терминов.
все)