Нужна помощь с Views 3 для Drupal 7

Раздел форума: 

Есть следующая задача.

 

есть таксономия в 2-а уровня.

нужно сделать Views для первого уровня с этим я справился 

 

 я сделал views типа таксономия указал словарь таксономии

появилось page. в ней настроил контекстные фильтры (я так понял что тут аргумент указывается) выбрал там термин таксономии "родительский термин" в нём значение по умолчанию тип PHP-code в нём result arg(1) 

в итоге я получил список терминов первого уровня.

 

НО при входе по ссылке терминов первого уровня у меня не создаётся список 2-го уровня, а сразу список нод у которых родитель "выбранный родитель"

 

Как реализовать представление таксономии по уровням.

например : появляется список таксономии перврго уровня в ввиде ссылок

потом мне нужно перейти на уровень ниже. там появится должен ещё один список но уже 2-го уровня . а уже потом при переходе по ссылке термина 2-го уровня у меня должен появится список нод удовлетворяющий 2-ум условиям :)

 

С нетермением жду ответа.

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

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
Прикрепить
Максимальный размер файла: 128 МБ.
Разрешённые типы файлов: txt doc docx rar zip xls xlsx pdf odf odt jpg jpeg gif png psd rtf.

Если вы выводите список

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

 

у меня есть список

у меня есть список таксономии. 

вида 

  • -вооружение
        • ---пистолеты
        • ---винтовки
        • ---пулемёты
  • -униформа
    • ---рубашки
    • ---штаны
    • ---обувь
  • -защита
    • ---шлем
    • ---бронижелет

 

мне нужно вывести эту таксономию с посощью views 

 

только сначала список будет из вооружение,униформа,защита

а когда пользователь перейдёт по ссылке (вооружение или униформа или защита)

у него должен появится новый views или как его там назвать, в котором будут дети выбранной ссылки

например если выбранная ссылка "вооружение" то список будет "пистолеты, винтовки, пулёмёты"

и только потом после перехода по одной из представленных ссылок должен появится список нод в которых указаны термины таксономии (вооружение, пистолеты или вооружение, винтовки или вооружение, пулемёты.) и так. далее.

не чего вроде военного.

 

но у меня получилось отобразить только первый уровень таксономии а после перехода по полученным ссылкам, появляется сразу список нод, в которых есть этот термин таксономии. А ВТОРОЙ УРОВЕНЬ ТАКСОНОМИИ НЕ ПОКАЗЫВАЕТСЯ. :(

 

вот собственно в этом и проблема.

Используйте модуль views tabs

Используйте модуль views tabs или что-то в этом духе, что интегрирует VIews и jQuery UI Tabs (из набора виджетов jQuery UI). Были даже готовые модули ajax-табов. Вам скорее всего потребуется два View, один для первого уровня, второй с аргументом родительского термина, по которому будут выводиться дочернии.

постараюсь объяснить по

постараюсь объяснить по другому что мне нужно.

 

Есть словарь таксономии 2-х уровневый

 

есть тип материала в котором есть поля term referens и выбрано 2-а термина таксономии 1-й уровень и 2-й уровень моего заранее созданного словаря.

 

нужно сделать views в котором отображается сначала список ссылок первый уровень словаря таксономии а после вхождения показывается новый список ссылок терминов 2-го уровня родителем которых явояется выбранный до этого термин 1-го уровня.

и уже вхождения в этот уровень покажет ссылки на ноды моего материала в котором указаны эти 2-а предидуших термина. (1-го и 2-го уровня). и подходят по условию

 

мне нужно сделать views на представление таксономии иерархическое и я так понимаю views для отображения ссылок на ноды. как это всё связать вместе хоть убейте не получается.

 

Drupal 7 views 3

 

Жду ответа

 

 

сделал views назвал его

сделал views назвал его ViewsLvl1 тип таксономии, выбрал нужный мне словарь.

в настройка 

КОНТЕКСТНЫЕ ФИЛЬТРЫ

добавил родительский термин, в разделе 

WHEN THE FILTER VALUE IS NOT IN THE URL

там выбрал Обеспечить значение по умолчанию и пункт PHP-code и написал там result arg(1)

дальше сделал ещё один views и назвал его viewsLvl2 типа таксономии, выбрал нужный словарь

путь указал /taxonomy/term/%

в КОНТЕКСТНЫЕ ФИЛЬТРЫ

добавил родительский термин, в разделе 

WHEN THE FILTER VALUE IS NOT IN THE URL

там выбрал Показать содержание "Результатов не найдено" 

в NO RESULTS BEHAVIOR

в View to insert выбрал taxonomy_term - дисплей: default

и выбрал  Inherit contextual filters


в итоге я получил сначала список ссылок на 1-й уровень таксономии и переход на уровень ниже.

а вот уже когда перехожу на уровень нод то там пусто.

 

я думаю нужно ещё сделать views который отображает список нод подходящий под выбранные термины как это сделать ?

КОНТЕКСТНЫЕ ФИЛЬТРЫ добавил

КОНТЕКСТНЫЕ ФИЛЬТРЫ

добавил родительский термин, в разделе 

WHEN THE FILTER VALUE IS NOT IN THE URL

там выбрал Обеспечить значение по умолчанию и пункт PHP-code и написал там result arg(1)

дальше сделал ещё один views и назвал его viewsLvl2 типа таксономии, выбрал нужный словарь

путь указал /taxonomy/term/%

В контекстных фильтрах должен быть специально для терминов таксономии заготовка: arg(1) в этом случае вернет слово term.

Наверно нужно использовать модули дополнительно View in view или Embed Views fields (не уверен как называется сейчас, но который позволяет вставлять view в поле другого view) и передавать ему аргумент. Но это очень, очень сильно загружает оперативную память.

Еще как вариант можно использовать Embed Views и вставлять его в шаблон, но это тоже плохой путь будет много есть оперативной памяти.

То что вы хотите сделать не получится сделать стандартными аргументами views, потому что аргументы должны браться как со страницы нод, так и со страницы терминов таксономии (если я правильно понял), это не получится сделать через один или даже  2 view без связки.