Не выводится чанк через pdoMenu.
Всем привет!
Ребят, второй день борюсь с меню. Подскажите, пожалуйста, кто знает как реализовать так, чтобы при активном пункте меню убиралась ссылка, то есть подгружать шаблон своего чанка (например, &tplHere=`@INLINE <li[[+classes]]>[[+menutitle]]`)? Все варианты tpl шаблонов из документации перепробовал, ни один не работает. Я предполагаю, видимо из-за того, что вывожу через &tplStart и применяю &displayStart=`1`. Причем сам класс &hereClass=`main-nav__active` при активном пункте меню отображается.
Ребят, второй день борюсь с меню. Подскажите, пожалуйста, кто знает как реализовать так, чтобы при активном пункте меню убиралась ссылка, то есть подгружать шаблон своего чанка (например, &tplHere=`@INLINE <li[[+classes]]>[[+menutitle]]`)? Все варианты tpl шаблонов из документации перепробовал, ни один не работает. Я предполагаю, видимо из-за того, что вывожу через &tplStart и применяю &displayStart=`1`. Причем сам класс &hereClass=`main-nav__active` при активном пункте меню отображается.
[[!pdoMenu?
&level=`1`
&parents=`22,20,35,57`
&displayStart=`1`
&resources=`22,20,35,57`
&tplStart=`@INLINE <li><a[[+classes]] href="[[+link]]">[[+menutitle]]</a></li>[[+wrapper]]`
&sortby=``
&outerClass=`main-nav no-display-mobile`
&hereClass=`main-nav__active`
&tplOuter=`@INLINE <ul [[+classes]]>[[+wrapper]]</ul>`
&firstClass=``
&lastClass=`js-show-modal`
&tplHere=`@INLINE <li[[+classes]]>[[+menutitle]]</li>`
]]
Комментарии: 10
Неужели никто не может подсказать по моей проблеме? ((
Приведённый выше вызов реальный? У вас там теги не закрыты.
Да, все закрыты.
Редактор почему-то режет screenshot.ru/upload/image/zLZY
Редактор почему-то режет screenshot.ru/upload/image/zLZY
Надо кнопку Code использовать, тогда не будет резать теги.
Попробуйте такой вызов, должно верно работать.
<ul class="main-nav no-display-mobile">
[[!pdoMenu?
&level=`1`
&parents=`22,20,35,57`
&displayStart=`1`
&tplStart=`@INLINE <li [[+classes]]><a href="[[+link]]">[[+menutitle]]</a></li>[[+wrapper]]`
&hereClass=`main-nav__active`
&firstClass=``
&tplOuter=`@INLINE [[+wrapper]]`
&lastClass=`js-show-modal`
&tplHere=`@INLINE <li [[+classes]]>[[+menutitle]]</li>`
]]
</ul>
Попробуйте такой вызов, должно верно работать.
Про кнопку Code не подумал — благодарю.
Ваш код выводил то же самое.
В итоге я решил удалить содержимое &tplStart и всё получилось как надо
Ваш код выводил то же самое.
В итоге я решил удалить содержимое &tplStart и всё получилось как надо
[[!pdoMenu?
&level=`1`
&parents=`22,20,35,57`
&resources=`22,20,35,57`
&displayStart=`1`
&tplStart=``
&outerClass=`main-nav no-display-mobile`
&hereClass=`main-nav__active`
&tplOuter=`@INLINE <ul[[+classes]]>[[+wrapper]]</ul>`
&firstClass=``
&lastClass=`js-show-modal`
&tplHere=`@INLINE <li[[+classes]]>[[+menutitle]]</li>`
]]
Благодарю за помощь, Андрей!
Не всё так гладко, как хотелось бы.
Проблема в том, что при заходе на дочерние ресурсы меню сбрасываются стили активного пункта меню.
Как можно разрешить эту ситуацию?
Проблема в том, что при заходе на дочерние ресурсы меню сбрасываются стили активного пункта меню.
Как можно разрешить эту ситуацию?
Покажите код вашего меню, который генерируется в итоге, и что нужно получить по факту.
Мой код приведённый выше, у меня работает верно, стили тоже не сбрасывает.
Мой код приведённый выше, у меня работает верно, стили тоже не сбрасывает.
Код меню в чанке сейчас такой:
[[!pdoMenu?
&level=`1`
&parents=`22,20,35,57`
&resources=`22,20,35,57`
&displayStart=`1`
&tplStart=``
&tpl=`@INLINE <li[[+classes]]><a href="[[+link]]"[[+attributes]]><span class="main-nav__star"></span>[[+menutitle]]</a>[[+wrapper]]</li>`
&outerClass=`main-nav no-display-mobile`
&hereClass=`main-nav__active`
&tplOuter=`@INLINE <ul[[+classes]]>[[+wrapper]]</ul>`
&firstClass=``
&lastClass=`js-show-modal`
&tplHere=`@INLINE <li[[+classes]]><span class="main-nav__star--active"></span>[[+menutitle]]</li>`
]]
Формируется в:<ul class="main-nav no-display-mobile">
<li class="main-nav__active"><span class="main-nav__star--active"></span>Делаю дизайн</li>
<li><a href="http://liamkinmodx.startdoit.ru/blog" ><span class="main-nav__star"></span>Веду блог</a></li>
<li><a href="http://liamkinmodx.startdoit.ru/photo/" ><span class="main-nav__star"></span>Фотографирую</a></li>
<li class="js-show-modal"><a href="" ><span class="main-nav__star"></span>Принимаю заказы</a></li>
</ul>
После захода на дочернюю страницу активного пункта меню становится такой:<ul class="main-nav no-display-mobile">
<li><a href="http://liamkinmodx.startdoit.ru/design"><span class="main-nav__star"></span>Делаю дизайн</a></li>
<li><a href="http://liamkinmodx.startdoit.ru/blog"><span class="main-nav__star"></span>Веду блог</a></li>
<li><a href="http://liamkinmodx.startdoit.ru/photo/"><span class="main-nav__star"></span>Фотографирую</a></li>
<li class="js-show-modal"><a href=""><span class="main-nav__star"></span>Принимаю заказы</a></li>
</ul>
А нужно, чтобы оставался первоначальный вариант.
У кого-нибудь есть соображения по этому поводу?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.