Столько времени убил, на поиски и так до сих пор не нашел решения.
Как сделать каталог на подобие уберкартовского catalog.
Чтобы, нажимаешь на раздел - попадаешь на страницу, где в виде иконок подразделы. Нажимаешь на иконку - попадаешь на страницу разделов следующего уровня.
То есть нужен обычный многоуровневый каталог.
Пытался реализовать с помощью вьюсов. Вроде бы все хорошо, но не получается вывести дочерние термины на странице текущего термина.
Покажите, пожалуйста, где есть вменяемая инструкция, как сделать подобный каталог.
Или в общих чертах кто объяснит?
Комментарии
druit.ru
Как раз недавно делала такую реализацию.
Использовала въюс и таксономии соответственно.
1. Создаете въюс типа "Термин"
2. Добавляете дисплей страницы и в нем прописываете путь "catalog/%"
3. Добавляете аргумент по "Parent term". В его настройках выбираете Action to take if argument is not present->Provide default argument->Fixed entry и в поле Default argument вводите 0.
4. Добавляете 2 поля - "ИД термина"(этому полю делаете Exclude), "Картинка термина"
5. Поле "Картинка термина" выбираете "Output this field as a link" и вбиваете туда catalog/[tid_1]. [tid_1] - токен "ИД термина"(поля которое не показывается).
В результате на странице catalog у вас будут все термины первого уровня со ссылками вида catalog/[tid], перейдя по которой вы попадаете на страницу где расположены все его дочерние термины. Надеюсь решение поможет.
P.S. В реализации которую реализовывала я был дополнительный пункт чтобы в конце концов вы пришли на страницу термина у которого нет детей, показывались все продукты которые связаны с ним. Там немного другой подход, и нужно немного пошалить ручками.
прикольно! записал...
Вот это и нужно
Удалось сделать многоуровневый каталог?
тоже интересно
Если не сложно, обьясните как можно такое реализовать?
да удалось вставкой пхп кода в заголовок представления
Можете написать какого php кода и в какое представление?
<?php
$v = views_get_current_view();
//Из аргументов получаем ID текущего термина
$term_id = intval($v->args[0]);
//Выводим дерево потомков термина
$terms = taxonomy_get_children ($term_id);
foreach ($terms as $term) {
$imag = taxonomy_image_display($term->tid);
print l($imag, taxonomy_term_path($term), array('html' => array('html' => 'true')));
}
$t = taxonomy_get_term($term_id);
?>
данным кодом у меня выводяться картинки дочерних терминов с ссылкой на страницу термина для этого необходим модуль taxonomy image, вставлял в представление taxonomy_term стандартное
А как вставить код php в представление?))
в модулях включаешь фильтр ПХП и вставляешь в заголовок представления выбирая формат ввода ПХП