Вывод ресурсов в зависимости от родителя
Пытаюсь вывести в сайтбаре ресурсы, через pdoPage, но почему-то не хочет работать моя конструкция:
Результат — выводит ресурсы в хаотичном порядке.
Вывод &resources через pdoMenu по этому же принципу работает нормально:
Пробовал по разному:
[[pdoPage?
&parents=`0`
&resources=`[[+parent:is=`1`:then=`2,3,4`:else=``]][[+parent:is=`5`:then=`6,7,8,9`:else=``]][[+parent:is=`10`:then=`11,12,13,14`:else=``]]`
&tpl=`NavRazdel`
&element=`ms2GalleryResources`
]]Вывожу в шаблоне.Результат — выводит ресурсы в хаотичном порядке.
Вывод &resources через pdoMenu по этому же принципу работает нормально:
[[pdoMenu?
&parents=`0`
&resources=`[[*parent:is=`2`:then=`13,14,146`]][[*parent:is=`133`:then=`13,14,146`]][[*parent:is=`135`:then=`13,14,146`]]`
&tpl=`NavRazdel`
]]Почему с pdoPage не получается?Пробовал по разному:
[[*parent:is=`2`:then=`13,14,146`]]
[[+parent:is=`2`:then=`13,14,146`]]
[[*parent:is=`2`:then=`13,14,146`:else=``]]Подскажите… Комментарии: 11
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Это означает — выводятся разные ресурсы из разных PARENT.
&parents=`0`Появилась логика, стали выводится ресурсы нужного родителя, но без 2-х шт. Т.е., если указываю :then=`13,14,146`, то выведутся только два ресурса 13 и 14, 146 пропадает; если :then=`6,7,8,9`, то только первые два (6 и 7), остальные не выводятся.
Вот такая конструкция выводит нужные ресурсы, но почему-то вычитает 2 шт из общего списка:
Т.е. из 17,228,489,710 выводит только 17,228, из 226,223,658 выводит 226
Застрял!
Откуда передаётся такой плейсхолдер?
Проще сделать свой сниппет и написать так:
где сниппет будет таким:
P.S. Может с ошибками написал, не проверял, но должно работать
Попробовал Ваш способ со сниппетом, всё равно выводит ресурсы в хаотичном порядке, без логики.
Я в PHP не силён, к сожалению.
Спасибо!!!
Сейчас Ваш вариант выводит нужные ресурсы только в родителях, а во вложенных ресурсах водит все ресурсы своего родителя.
Уделите минутку, подскажите!
Спасибо!
И в первой версии сниппета у меня опечатка была, 0 стоял вместо 2.