Не могу разобраться с countChildren в pdomenu
Вызываю pdoMenu так:
Категория
— подкатегория (8 шт.)
Но при выставленном &countChildren=`1` для подкатегорий применяется &tplParentRow, а не &tplInnerRow, если поставить &countChildren=`0` — то все ок, кроме подсчета товаров.
Я может как-то не так использую параметры шаблонов, но прям не могу ничего придумать, как сделать, что бы заработало.
[[pdoMenu?
&parents=`3`
&level=`2`
&tplInner=`@INLINE <ul class="dropdown-menu"> [[+wrapper]]</ul>`
&tplOuter=`@INLINE <ul class="nav navbar-nav">[[+wrapper]]</ul>`
&tplParentRow=`@INLINE <li[[+classes]]><a class="dropdown-toggle" data-toggle="dropdown" href="[[+link]]" [[+attributes]]>[[+menutitle]]<span></span></a>[[+wrapper]]</li>`
&tplInnerRow=`@INLINE <li[[+classes]]><a href="[[+link]]" [[+attributes]]>[[+menutitle]] <span>([[+children]] шт.)</span></a>[[+wrapper]]</li>`
&countChildren=`1`
&hereClass=`active open`
]]Суть проблемы вот в чем — у меня двух двухуровневое меню в котором первый уровень — дропдаун меню, которое при клике не переходит, а разворачивает подкатегории. В которых и должен происходить подсчет внутренних документов типа:Категория
— подкатегория (8 шт.)
Но при выставленном &countChildren=`1` для подкатегорий применяется &tplParentRow, а не &tplInnerRow, если поставить &countChildren=`0` — то все ок, кроме подсчета товаров.
Я может как-то не так использую параметры шаблонов, но прям не могу ничего придумать, как сделать, что бы заработало.
Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
есть меню в каталоге, у части разделов есть подкатегории. У всех есть товары.
— Категория 1
— Категория 2
— подкатегория 1
— подкатегория 2
— Категория 3
и у всех необходимо считать дочерние ресурсы.
Выставляем параметр и тогда для всех пунктов (1 и 2 уровня) параметр parentClass срабатывает.
Казалось бы логично, мы же считаем для всех подпункты, но на практике parentClass необходим только для Категория 2.
И тут уже не понятно, баг это или фича.
Соответственно они являются папками (контейнерами, родителями).
Разница только в том что у категории 2 эти ресурсы имеют тип «категория», а у категории 1 — «товар».
Не может быть так, чтобы у категории 1 имелось 20 ресурсов (товаров) внутри, но она бы не являлась при это родителем (контейнером)!
То же самое, если ты выведешь меню с level = 1, то пункты меню не будут категориями, но если level = 2, то эти же пункты уже будут категориями (если внутри них есть товары или другие ресурсы)
П.С. Либо я туплю, либо не понимаю что ты хочешь.
Вызов меню
При таком вызове класс parent будет у всех категорий.
Если убрать параметр countChildren (не меняя другие параметры)
то parent остаётся только у категорий с подкатегориями.
Может так и задумано, но мне кажется что countChildren не должен влиять на parentClass.
Еще влияет на это и:
Убери этот параметр и у категорий, у которых ранее не было класса «parent», этот класс появится, т.к. внутри появятся пункты с товарами!
Тоже самое и с параметром:
Когда level = 1 класса «parent» нет, когда 2 и более, то у тех же пунктов уже добавляется «parent».
и с
по аналогии
Не знаю, может меня логика подводит…
Ну не понимаю я почему подсчет дочерних должен влиять на parentClass.
Как бы технически то я понимаю почему, а вот практически не очень.
В общем предлагаю тему закрыть.
Тут скорей всего от задач зависит. Мне было бы удобно чтобы не влияло, кому-то наоборот.
Но судя по посту не у одного меня возникает эта путаница.
Благодарю за дискуссию