На сайте 2 словаря:
Товары(на котором строится один View)
Новости
Задача: выводить Товары в виде таблицы. Новости выводить как по умолчанию.
Таблица создана с помощью Views представления taxonomy/term/%.
Вопрос: как сделать чтобы Новости выводились без этой таблицы.
/* Как я решал эту задачу */
1) В созданном представлении таблицы выставил Таксономия:Словарь=Товары
Результат: Товары выводятся таблицей, Новости не выводятся вообще.
[Правильное решение]
Поставить Taxonomy redirect, сделать пернаправление для словаря (или термина) и прописать его в Views в разделе Страница - Путь
2) Добавил аргумент Таксономия:ID словаря. Выставил там проверку по Словарь:Товары. Все равно ничего не выходит.
Комментарии
Используйте фильтры
Если я в фильтрах выставляю Словарь=Нужный или Словарь<>Ненужный, то у меня по
example.com/taxonomy/term/1
не выводится вообще ничего.
taxonomy_redirect или пара строк в модуле
По моей логике рас в Views есть что что включает вид для одного словаря, значит должно быть что-то, что позволяет этот вид не применять для другого.
VasyOK, по логике, 1 страница taxonomy/term/x - 1 страничное отображение
penexe, taxonomy_redirect поставил. Не понимаю какое он имеет отношение к Views.
Вы хоть опишите в двух словах свое наставление.
Фильтры нормально работают. Если применить еще аргументы, то можно будет указывать словарь.
VasyOK,
1) в таксономии есть хук hook_term_path
он используется при выводе ссылок на термины таксономии, пишут обычно так
l($term->name, taxonomy_term_path($term));
2) также в таксономии у словаря есть атрибут module - принадлежность к модулю, например используется в модуле forum.
3) этот при вызове taxonomy_term_path вызывается хук hook_term_path того модуля к которому прикреплен "словарь" и меняет ссылку c taxonomy/term/x на например forum/x
4) эти разные пути (кроме taxonomy/term/x) неимеют реальной страницы в системе.
5) с помошью вьювс мы создаем эти реальные страницы, с совершенно независимым оформлением и настройками. и можем этим страницам добавить также алиасы через pathauto.
6) taxonomy_redirect - меняет в системе атрибут module словарей на свой, и сам разруливает пути.
7) модуль написан кхм..., вообщем много запросов в бд.
можно написать свою реализацию hook_term_path в своем модуле и избавиться от лишних запросов, также надо в бд у нужных словарей поменять "module" на имя своего модуля.
усе
Guide, вы говорите нужно использовать фильтры и аргументы. Несколько обновил тему поэтому поводу. Может быть вы увидите ошибку в моих действиях.
penexe, над вашей инструкцией я конечно поботанирую, но что-то мне подсказывает что есть более изящные решения.
Спасибо penexe. Проблему решил моделем Taxonomy redirect.
Guide ваш вриант тоже интерсен, но не смог я допетрить как им воспользоваться.
Пожалуйста, опишите подробнее
"[Правильное решение]
Поставить Taxonomy redirect, сделать пернаправление для словаря (или термина) и прописать его в Views в разделе Страница - Путь"
Решаю подобную задачу, не могу нормально все настроить. Кучу статей уже перелопатила, до истины не добралась.
Буду очень благодарна паре подробных и ясных примеров, объяснений.
О том как работает Taxonomy redirect мне объяснили здесь:
http://www.drupal.ru/node/37259
Если не поймете скажите, я вам через день скриншоты того что я выставил скину. Я просто не помню на каком сайте я это делал.
да, эту ссылку посещала и изучала.
в принципе, работу redirect + views + pathauto удалось настроить - но в моем варианте настройки мне приходится вручную перебивать синонимы - а это мартышкин труд.
за скриншоты буду благодарна.
изложила точнее свою проблему вот здесь http://www.drupal.ru/node/38160