Долго искал замену Taxonomy Redirect для 7-го Друпала. И нашел - Taxonomy display.
САМОЕ ГЛАВНОЕ!!!
Во Views должен быть выключен Вид - Taxonomy term (который вьюсовский) или у этого вида должен быть изменен адрес.
Вместо - taxonomy/term/% пишите любой адрес вида - wwwww/%
Лично я создал клон Вида Taxonomy term, сам Taxonomy term выключил. А в клоне изменил адрес taxonomy/term/% на wwwww/%
Далее, устанавливаем модуль Taxonomy display.
Переходим в настройки вывода словаря таксономии вывод которого вы хотите изменить - admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display
Внизу на вкладке "Custom display settings" (Расширенные параметры вывода), ставим галочку у "Taxonomy term page" (Страница термина), жмём Save (Сохранить).
Появляется новая подвкладка "Taxonomy term page" (Страница термина), переходим на неё - admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display/full
Внизу выбираем следующее:
Term display - выбираем Hidden (Скрыто)
Associated content display - выбираем Views (Представления)
View (Просмотреть) - выбираем свой Views (я выбрал ранее созданный клон Taxonomy term)
View's display - выбираем страницу из своего Views
Жмём Save (Сохранить).
Переходим на страницу термина и смотрим результат.
Всё!
Комментарии
Если вы используете Exposed Filters и Pathauto, то для их правильной работы:
в клоне стандартного вида Taxonomy Term не нужно менять адрес на свой, надо оставить адрес taxonomy/term/%
П.С. Все равно не получается так как хочу сделать. Отписал issue на Taxonomy Display
Может кто подскажет, при использовании этого модуля, не отображается содержимое термина, как быть?
tsepelev, что у вас не отображается? выложите скриншоты.
Все сделал, как описано. В представлении создал страницу с адресом (example/%), аргументы по терминам и т.д. Все работает, но кликая по термину я ухожу не на example/..., а на taxonomy/term/... Кто сталкивался с подобным?
P.S. Если я правильно понимаю, то данный модуль оставляет адрес стандартным - taxonomy/term/%. В Taxonomy Redirect все иначе: там задается новый адрес и под этот новый адрес делается представление с критериями вывода. Если это так, то зачем задавать адрес, который указывается в представлении (для дисплея - page (в данном случае example/% или ваш: wwwwww/%))? Получается, что страница доступна по двум адресам?
Извиняюсь, забыл написать что надо с помощью Pathauto задать необходимые пути чтобы термины у вас получались такого вида example/%
ПС "...Получается, что страница доступна по двум адресам?" Если по двум адресам открывается, то скорее всего вам нужно установить модуль Global Redirect
Получается, что адрес для page в представлении нужен лишь для формальности. Системный адрес всегда taxonomy/term/%, просто в Pathauto для каждого словаря создать свои синонимы. Идея понятна, но что-то смущает сам модуль.
посмотрите у меня на сайте, все работает как надо:
Тут новости выводятся одним вьюсом - http://34355.ru/novosti/proisshestviya
Тут организации другим - http://34355.ru/katalog/avto-moto-transport
Тут материалы с разбивкой по адресам третьим - http://34355.ru/adresa/g-irbit
Спасибо за разъяснения!
Спасибо Вам!!!!
Спасибо! Как раз это искал
Спасибо за инструкцию.
«Term display - выбираем Hidden (Скрыто)»
Можно показывать,это описание.
Работает только если view, который выставляется на страницах admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display/full, один и тот же для всех словарей.
То есть, иными словами, не работает, если, например, термины СЛОВАРЯ_1 должны привязываться ко View_1, а термины СЛОВАРЯ_2 должны привязываться ко View_2.
В этом случае, если в обоих view указать адрес taxonomy/term/%, то будет вызываться только какой-то один из них (последний сохраненный).
Чтобы все работало, нужно, чтобы "системные пути" для каждого из словарей были разными. Например, для словаря "Каталог товаров" нужно, чтобы путь был бы типа catalog/xxx, а для словаря "Торговые марки" - brand/xxx (где xxx-tid) Во view_catalog тогда можно будет прописать адрес - catalog/%, а во view_brand - brand/%.
Если копнуть глубже и посмотреть в таблицу url_alias можно убедиться, что все системные пути для всех терминов таксономии - одинаковые taxonomy/term/xxx. Можно даже поменять какой-нибудь из системных путей на свой, чтобы убедиться в корректном вызове нужного нам view.
Если копнуть еще глубже, то замечательный модуль Taxonomy Redirect для D6 использовал хук hook_term_path, который подменяет системные пути терминов. Проблема в том, что в D7 этого хука уже нет.
Я поковырялся и нашел решение на Drupal.org http://drupal.org/node/975688, которое реализовано в модуле Entity Path (http://drupal.org/project/entity_path).
Интерфейс простой, пользоваться легко. Единственное, нужно будет удалить и вновь создать все термины таксономии в Pathauto. Проверить его работу можно так же заглянув в таблицу url_alias.
Простите, если сумбурно...
В общем, у меня нормально работает связка Views - Pathauto - Taxonomy display - Entity path.
Благодарю!!!
sashken, у вас на сайте есть страницы каталога, возьмем, например:
родительская рубрика http://34355.ru/catalog/31
и одна из дочерних http://34355.ru/catalog/49
Как вы это реализовали?
У меня получилось также реализовать двумя видами и при помощи модуля Taxonomy Views Integrator. Бился с модулем Taxonomy Display, но получалось либо с одним, либо с другим видом.
medneem, у меня сейчас новая версия сайта, её делал не я (мне делали на заказ), поэтому я не могу подсказать как и что там сделано.
Объясните, пожалуйста, как им пользоваться, если будет время. Я что-то не могу понять что к чему..
Спасибо от души!
+100
Работает как надо, а не как модуль Taxonomy Views Integrator
Всем привет!
Подскажите, почему может не срабатывать Taxonomy display?
entity_path не ставил, просто клонировал базовое представление taxonomy, в базовом одни поля в клонированном другие. Все настроил в отображении, но клонированный views не хватается, все отображает базовый.
UP. Подскажите, есть другой модуль? Уже 7 часов убил на Taxonomy display с разными настройками - не работает, пора наверно что-то другое пробовать.
UP2 Главное не сдаваться Не используйте базовое представление таксономии и не создавайте нового с путем taxonomy/term/% и все заработает.
Настроил синоним урл для терминов таксономии следующим образом
Корень.ру/search/place/[машинное имя словаря таксономии]/id термина
результат http://корень сайта/search/place/typesofplace/1
Контекстные фильтры:
(термин) Термин таксономии: Родительский термин
(термин) Термин таксономии: ID термина
Путь: /search/place/%/%
В предпросмотре все работает отлично, но вот на страницу не выводится
в расширенных параметрах отображения термина отметил страница термина, на странице термина указал что показывать надо представление, Term display - hidden
Подскажите, что я упускаю?
Автор топика достаточно подробно все описал
У меня в конт фильтре только Содержимое: Имеет идентификатор термина таксономии + в нем критерии проверки "Термин таксономии".
И путь наверно просто сделать в таком виде /search/place/%
Вот сегодня попробывал через id - выводится без проблем. Но я хочу чтобы был было имя термина транслитом, в pathauto все настроил, но фильтр ( (термин) Термин таксономии: Имя ) подставляет только русское имя термина в предпросмотре на кириллице выводится, а на латинице нет, какой фильт нужно подставить?
оставить id термина. Как не настраивать путь в pathauto, views видит его все равно таким taxonomy/term/id_term
Мне помогла вот эта статья
http://www.webbykat.com/2012/04/overriding-default-taxonomy-page-view-dr...
Рзобрался
Сейчас почему-то не переопределяются заголовки
У меня получился вот такой работающий алгоритм на базе данного и еще вот [#88085]этого[/#] топиков.
1. Создать нужные словари таксономий. Configuration > Search & metadata > URL Aliases > Patterns вручную прописать паттерны для словарей таксономий. По умолчанию путь для таксономий выглядит так: [term:vocabulary]/[term:name], вместо [term:vocabulary] надо вручную написать имя словаря (или любое другое имя, которое потом будет использоваться во вьюсах; удобнее, если это будет имя словаря). Например: topics/[term:name].
2. Отключить штатный вьюс Taxonomy term.
3. Создать представление для типа данных User. В нем создать отдельные варианты типа Page для каждого словаря таксономии, который используется в профилях пользователей. Установить путь (Path) вида: /taxonomy/***/%, где *** - имя, которое используется в паттерне данного словаря.
4. В контекстных фильтрах выставить поле термина таксономии, которое используется в профиле, установив ему значение по умолчанию: ID термина таксономии из URL.
5. Теперь понадобится модуль Taxonomy Display. Переходим в настройки вывода словаря таксономии, вывод которого вы хотите изменить – admin > structure > taxonomy > ИМЯ_СЛОВАРЯ > display.
6. Внизу на вкладке "Custom display settings" (Расширенные параметры вывода), ставим галочку у "Taxonomy term page" (Страница термина), жмём Save (Сохранить).
7. Появляется новая подвкладка "Taxonomy term page" (Страница термина), переходим на неё - admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display/full
8. Внизу выбираем следующее:
- Term display - выбираем Hidden или Core, в зависимости от того, нужно ли отображать содержимое описания термина или только привязанных к ниму польователей. Оптимально выбирать Core – и таким образом совмещаем все достоинства сущности таксономии седьмого Друпала (любой набор полей!) и, собственно, работающую таксономию.
- Associated content display - выбираем Views (Представления)
- View (Просмотреть) - выбираем свой Views (я выбрал ранее созданный клон Taxonomy term)
- View's display - выбираем страницу из своего Views
9. Повторяем все это для каждого словаря таксономий, который нужно использовать в профилях пользователей.
Все работает.
Ух скока букв а если проще то - Уникальный views для каждого словаря Taxonomy Views Integrator
TVI криво работает еще на D7. Поставил, включил, не работает. Правда Taxonomy Display не отключал.
А не, работает. Но TD тогда не нужен..
У меня все та же проблема с переопределением заголовка, когда в урл указан tid - переопределяется, а когда имя термина - не переопределяется, остается имя из таксономии.
Например:
если зайти по аресу .../search/place/type/13 - Заголовок переопределяется "Гостиница в Сочи"
.../search/place/type/hotel - не переопределяется "Гостиница", но Taxonomy display работает
в чем может быть проблема?
Из статистики на d.org выходит, что количество багов в TVI резко снизили в последнем апдейте. Несколькими месяцами ранее TVI работал с большими проблемами. Как сейчас не знаю, работает нормально?
Вчера поставил последний dev. Полет нормальный. Позволяет определить view как на уровне словаря, так и на уровне термина (возможно с подтерминами). Перекрывает Taxonomy Dispalay.
1. Хлебные крошки он теперь не ломает?
2. А как с утечкой памяти? Раньше ему 192Мб на процесс было мало.
1. Крошки на месте.
2. С памятью сказать не могу . Будет видно. Не жалуется.
TVI не умеет вообще отключить вывод списка для термина или словаря, или я не нашел?
Надо что-то типа 404 ошибки или редиректа. У меня страницы со списками формируются отдельно (views field), встроенные не нужны. Пробовал рядом поставить disable_term_node_listings — он вообще не работает рядом с TVI.
Увы пришлось пока отказаться и от TVI и от Taxonomy Display.
Сеошники потребовали прписывать page title и метатеги для термина. Сделал как тут: https://drupal.org/node/1837660 #5
Спасибо! Тема была полезной, так как об этом мне уже не раз говорили.
Модуль Taxonomy display очень прост и не несёт особой нагрузки, просто добавляет 1 важную возможность.
В частности, у меня была задача: выводить на странице термина материалы определённого типа, на странице родительского термина показывать также материалы, отнесенные к дочерним терминам.
С помощью Вьюс - и это предложение я часто слышал - я сделал нужный формат отображения:
Тизеры материалов определённого типа с контекстным фильтром - ID термина таксономии, взятый из адреса страницы с выводом дочерних терминов.
В выводе термина таксономии выбрал вместо ядро, Views - созданный вьюс. И получилось.
Не совсем понял. Модуль Taxonomy display дает возможность оформить с помощью отдельного Вьюса термины, а не содержимое (типы материалов) выводимое внутри терминов?
Разобрался
Спасибо, разобралась при помощи этого топика. Свой опыт описала тут: http://www.drupal.ru/node/115645
Разобрался! Спасибо ТС, но все систематизировала именно marigolu. Спасибище Вам! Кто сразу не разобрался, красивый ответ - по указанной marigolu ссылке.
Все привет.
У меня стояла задача вывести страницу с терминами которые вели бы на свои вью (site.ru->catalog->term1->список нод относящихся к term1 через вьюс)
Алгоритм был прост
1. Установка Taxonomy display.
2. Создаем словарь терминов.
3. Создаем нужный тип ноды.
4. Добавляем поле словаря в ноду.
5. Добавляем ноды.
6. Создаем страницу вывода словаря терминов через вьюху (z.B. site.ru/catalog)
7. Создаем вьюху без создания страницы/блока для нашего типа нод. Выбираем контекстный фильтр "Содержимое: Имеет идентификатор термина таксономии" -> "Передать значение по умолчанию" -> "ID термина из URL"
8. В настройке управления отображением словаря включаем способ отображения "Страница термина таксономии"
9. Переходим в настройки страницы термина таксономии, настраиваем Taxonomy display:
- Associated content display:Представления
- Просмотр: Наша вьюха из п.7
В итоге: заходим в наш каталог site.ru/catalog - видим вьюху словаря, кликаем по термину - вью термина с примененным контекстным фильтром.
Возможно мой метод чем то плох? если так, расскажите пожалуйста
Метод ничем не плох. Если это D7, метатеги задать можете? (Вообще метод есть, но мне он кажется муторным)
+ некоторым сеонисты требуют не выводить описание категории на второй и последующих страницах термина.