Каталог на D7 с синонимом термина таксономии как аргумент
У меня такой вопрос: делаю на Drupal Commerce каталог товаров как например в этом магазине http://czech-cristal.ru . Т.е. я создал словарь таксономии "Категории товаров" с названием нужных товаров, где "Pattern for all Категории товаров paths" формируются так catalog/[term:name], ну и конечно на базе словаря создал соответственно менюшку, которая ссылается на Views(путь catalog/%) с передачей аргумента.
Мне нужно чтобы ссылки имели именно вид catalog/[term:name] , вот как на http://czech-cristal.ru .
Так вот далее, с какими я проблемами столкнулся, я забил значит термины таксономии, менюшка появилась со ссылками catalog/obuv-timberland и catalog/novyy-termin . Сделал
Views с url catalog/%, контекстный фильтр задал " Содержимое: Имеет идентификатор термина таксономии (с глубиной) ", в критерии проверки выбрал PHP код, и в коде пишу следующее:
$url = drupal_lookup_path('source', "catalog/".$argument); if ($url != false) { // если путь найден, проверяем, что это путь к термину таксономии // $term_base_path = 'taxonomy/term/'; if (strncmp($term_base_path, $url, strlen($term_base_path)) == 0) { // вырезаем префикс 'taxonomy/term/', оставшееся значение преобразуем в число // и заменяем аргумент вьюса на полученный ID термина таксономии // $handler->argument = intval(str_replace($term_base_path, '', $url)); } } return TRUE;
Так вот в самой Views все выводит правильно как и должно. Выводит нужные товары в зависимости от термина(скрин1). Проблема моя заключаетс в том, что на самом сайте по адресам catalog/obuv-timberland и catalog/novyy-termin выводится не то, что в предпросмотре во Views, а по порядку материалы, ассоциированные с данными терминами таксономии(скрин 2). Подскажите, пожалуйста, как сделать так чтобы и на самом сайте выводились товары каталога как это в предпросмотре Views.
Не совсем понял, что именно вы хотите сделать, чем не устраивает стандартный вывод термина таксономии? Зачем сложности с этим php кодом? Попробуйте сделать через tvi, как на этом видео:
Темизация Drupal урок 7 Темизация Термина таксономии
Я вывожу товары сеткой через Views, вот как в каталоге на странице http://czech-cristal.ru/catalog/cheshskaya-bizhuteriya/podveski-s-elementami-swarovski/serdechki . Здесь через контекстные фильтры передается термин таксономии материала и выводятся сами материалы и мне нужно обязательно выводить через Views(в админке собственно уже все работает нормально, скрин1). А делать нужно именно через Views, потому что так удобно сеткой выводить во-первых, во-вторых нужно будет задействовать впоследствии expose-фильтры, поэтому только Views и поэтому стандартный вывод таксономии не устраивает. И на самом сайте тоже так должно быть, поэтому нужно как-то перекрыть стандартный вывод вьюсом. Как?
С помощью модуля tvi.
Посмотрите видео, там все это объяснаяется.
Спасибо!Помогло! Еще как вариант как оказалось можно было сделать через Taxonomy display.