Задать вопрос
@yooooooman

Как сделать вложенные категории в чпу через nested set yii2?

Доброго времени суток!

Пытаюсь понять как правильно реализовать url-чпу с бесконечными вложенными категориями при методе построения дерева через nested set в Yii2, используя https://github.com/creocoder/yii2-nested-sets.

С реализацией дерева в хлебных крошках проблем не возникло, путь с вложенностью удалось вывести довольно быстро и так как необходимо. Вложенность может быть любая: находим страницы и потом всех родителей и выводим.

Для url же первоначально мысль складывалась так же: для каждой страницы сохраняется свой alias или slug, например:

1) страница услуги: slug - uslugi
2) страница услуги->какой-то вид услуг: slug - kakoy-to-vid-uslug

И далее по схеме хлебных крошек находим нужную страницу, через foreach находим всех родителей, и потом все формируем в url. Например, если это страница "какой-то вид услуг" и родитель "услуги", то url будет uslugi/kakoy-to-vid-uslug.

Вопрос в том, что не понимаю, как это написать в собственном классе createUrl и parseRequest. Не понимаю, как совместить slug найденный и slug всех родителей. А примеров найти не могу.

Из найденных примеров, в том числе и документации, получилось только сделать url вида: site/zdes-chto-ugodno/slug. Т.е для примеров выше получится: 1) site/zdes-chto-ugodno/uslugi и 2) site/zdes-chto-ugodno/kakoy-to-vid-uslug

И вообще правильный ли такой подход в виде теории для nested set или это делается вообще по другому. Может быть в slug при создании страницы вообще сохраняется весь путь, исходя их выбранного родителя. Т.е для страницы какой-то услуги сохраняется не kakoy-to-vid-uslug, а полный вид, включая и родителя uslugi/kakoy-to-vid-uslug?
  • Вопрос задан
  • 196 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы