makar44 Опубликовано 31 марта, 2013 Жалоба Поделиться Опубликовано 31 марта, 2013 Доброго времени суток! Уважаемые знатоки simpla! Прошу подсказать в вопросе по выводу подкатегорий 3-го уровня вложенности. Все перепробовал, но не пойму почему вывод идет только 2-го уровня. Мой код: {* Рекурсивная функция вывода дерева категорий *} {function name=categories_tree} {if $categories} <ul> {foreach $categories as $c} {* Показываем только видимые категории *} {if $c->id == '13'} {foreach $c->subcategories as $cat} <li> <a {if $category->id == $cat->id}class="active"{/if} href="catalog/{$cat->url}" data-category="{$cat->id}">{$cat->name}</a> {categories_tree categories=$cat->subcategories} </li> {/foreach} {/if} </ul> {/foreach} {/if} {/function} {categories_tree categories=$categories} Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 31 марта, 2013 Автор Жалоба Поделиться Опубликовано 31 марта, 2013 13 это id Корневой категории т.е- корневая категория - id=13- подкатегория 2-й уровень - подкатегория 3-й уровеньСейчас у меня показывается только 2-й уровень Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 31 марта, 2013 Жалоба Поделиться Опубликовано 31 марта, 2013 И правильно: приведенный код отображает ТОЛЬКО подкатегории категории с id=13 и ВСЕ Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 31 марта, 2013 Автор Жалоба Поделиться Опубликовано 31 марта, 2013 Что посоветуете изменить, чтобы показывались подкатегории 3-го уровня вложнности? Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 31 марта, 2013 Автор Жалоба Поделиться Опубликовано 31 марта, 2013 Если все такие ответы будут давать, то можно разводить дискуссии бесконечно, может кто сталкивался с подобной проблемой, прошу подсказать. Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 31 марта, 2013 Жалоба Поделиться Опубликовано 31 марта, 2013 Почему не заменить меню, хотя бы на это - http://forum.simplacms.ru/discussion/1746/eschyo-odno-menyu-posredstvom-jquery#Item_29 ?Или нравится именно то вариант? Цитата Ссылка на сообщение Поделиться на другие сайты
RodgerFox Опубликовано 31 марта, 2013 Жалоба Поделиться Опубликовано 31 марта, 2013 koteyka2 - показал вариант. так же есть еще несколько вариантов реализации, почему не пользуетесь поиском? Как сделать 3+ уровень вложенности? Знаете как реализуется вызов функции самой себя? Тут так же по аналогии. Почему вы не пользуетесь поиском, но пользуетесь оскорблениями к нам? Почему вы создаете дискурсию и обвиняете наши ответы в них? Почему вы такой? T_T Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 31 марта, 2013 Автор Жалоба Поделиться Опубликовано 31 марта, 2013 Я никого не хотел огорчить! Извиняйте если что не так! По поиску смотрел, но не нашел подобной темы, возможно я ошибаюсь. Но все таки я не нашел решение своего вопроса.Kosjak76 20:24 И правильно: приведенный код отображает ТОЛЬКО подкатегории категории с id=13 и ВСЕНо подкатегория 3-го уровня разве не относится к корневой категории с id=13. Постараюсь объяснить подробнее: У меня есть раздел Детская одежда: в этом разделе мне нужно, чтобы слева отображались все подкатегории любой вложенности этого корневого раздела. Как можно это реализовать? Цитата Ссылка на сообщение Поделиться на другие сайты
Kasha Опубликовано 31 марта, 2013 Жалоба Поделиться Опубликовано 31 марта, 2013 Смотри, у тебя тут идет ФУНКЦИЯ которую ты вызываешь. При вызове первый раз он смотрит категорию 13 и выводит её, потом пройдя чуть дальше она запрашивает подкатегории этой 13 категории методом вызова этой же самой функции, но у тебя ведь подкатегория не имеет айди 13, как следствие у тебя идет обработка:-посмотрим все категории--категория имеет айди 13 тогда посимотрим её подкатегории---если подкатегория категории имеет айди 13 тогда посимотрим её подкатегории (тут у тебя уже пустой вывод). Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 1 апреля, 2013 Автор Жалоба Поделиться Опубликовано 1 апреля, 2013 Да, действительно у подкатегории 3-го уровня вложенности id присваивается 21, как это можно учесть в коде? Цитата Ссылка на сообщение Поделиться на другие сайты
Kasha Опубликовано 1 апреля, 2013 Жалоба Поделиться Опубликовано 1 апреля, 2013 Ну если продолжать так же извращаться то {if $c->id == '13' or $c->id == '21'}Хотя я бы вам посоветовал пересмотреть свой подход к решению этой задачи.Зачем вам проверка на айди 13? покажите структуру каталога или объясните что вы этим скрываете Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 1 апреля, 2013 Автор Жалоба Поделиться Опубликовано 1 апреля, 2013 Что можете посоветовать). Я просто нашел данное решение в интернете и взял его за основу. Если можете предложить другой вариант буду очень рад, даже за небольшое вознаграждение)! ICQ: 609-440-159 Цитата Ссылка на сообщение Поделиться на другие сайты
dkoz Опубликовано 1 апреля, 2013 Жалоба Поделиться Опубликовано 1 апреля, 2013 {* Рекурсивная функция вывода дерева категорий *}{function name=categories_tree level=0}{if $categories} {foreach $categories as $c} {if $c->id == '13' || $level != 0} ..... {categories_tree categories=$c->subcategories level=$level+1} {/if} {/foreach}{/if}{/function}{categories_tree categories=$categories} Цитата Ссылка на сообщение Поделиться на другие сайты
makar44 Опубликовано 1 апреля, 2013 Автор Жалоба Поделиться Опубликовано 1 апреля, 2013 К сожалению код тоже не подошел. Но провозившись целый день, все таки достиг цели! Всем спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 1 апреля, 2013 Жалоба Поделиться Опубликовано 1 апреля, 2013 Если устроит такое меню http://sewteh.com.ua, то могу скинуть tpl и scc. там вырежете само меню и вставите себе. Цитата Ссылка на сообщение Поделиться на другие сайты
RodgerFox Опубликовано 1 апреля, 2013 Жалоба Поделиться Опубликовано 1 апреля, 2013 makar44, ну выложите, что получилось. Цитата Ссылка на сообщение Поделиться на другие сайты
nitrol Опубликовано 7 апреля, 2013 Жалоба Поделиться Опубликовано 7 апреля, 2013 koteyka2, можешь пожалуйста выложить шаблон с менюшкой? Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 10 апреля, 2013 Жалоба Поделиться Опубликовано 10 апреля, 2013 На сайте я меню поменял, но аккордеон есть в архиве. Так что не думайте, что то меню - это аккордеон. Цитата Ссылка на сообщение Поделиться на другие сайты
angry_ded_mazay Опубликовано 4 мая, 2013 Жалоба Поделиться Опубликовано 4 мая, 2013 Если устроит такое меню http://sewteh.com.ua, то могу скинуть tpl и scc. там вырежете само меню и вставите себе.Буду очень признателен за файлики. Хочу попробовать переделать такую менюшку в горизонтальную.. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.