Вывод ресурсов в зависимости от родителя
        Пытаюсь вывести в сайтбаре ресурсы, через 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=`-1`            
                Не помогло, результат тот же            
                    
                Убрал вообще &parents=`0`
Появилась логика, стали выводится ресурсы нужного родителя, но без 2-х шт. Т.е., если указываю :then=`13,14,146`, то выведутся только два ресурса 13 и 14, 146 пропадает; если :then=`6,7,8,9`, то только первые два (6 и 7), остальные не выводятся.
                    Появилась логика, стали выводится ресурсы нужного родителя, но без 2-х шт. Т.е., если указываю :then=`13,14,146`, то выведутся только два ресурса 13 и 14, 146 пропадает; если :then=`6,7,8,9`, то только первые два (6 и 7), остальные не выводятся.
                Люди добрые, подскажите, должна ли вообще работать такая выборка с 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=``]]`Вот такая конструкция выводит нужные ресурсы, но почему-то вычитает 2 шт из общего списка:[[pdoPage?
    &resources=`[[+parent:is=`2`:then=`226,223,658`:else=``]][[+parent:is=`8`:then=`17,228,489,710`:else=``]][[+parent:is=`37`:then=`751,40,718,720`:else=``]][[+parent:is=`75`:then=`76`:else=``]]`
	&tpl=`NavRazdel`
	&limit=`10`
	&includeThumbs=`190x143,290x194`
	&includeOriginal=`1`
	&element=`ms2GalleryResources`
]]Т.е. из 17,228,489,710 выводит только 17,228, из 226,223,658 выводит 226Застрял!
                Почему теперь [[+parent]]?
Откуда передаётся такой плейсхолдер?
Проще сделать свой сниппет и написать так:
P.S. Может с ошибками написал, не проверял, но должно работать
                    Откуда передаётся такой плейсхолдер?
Проще сделать свой сниппет и написать так:
&resources=`[[!myMenuParents]]`где сниппет будет таким:switch($modx->resource->id) {
	case 0: return '226,223,658';
	case 8: return '17,227,489,710';
	case 37: return '751,40,718,720';
	case 47: return '76';
	default: return;
}P.S. Может с ошибками написал, не проверял, но должно работать
Почему теперь [[+parent]]?Просто с pdoMenu всё работает корректно, вот и пробую с pdoPage
Попробовал Ваш способ со сниппетом, всё равно выводит ресурсы в хаотичном порядке, без логики.
Я в PHP не силён, к сожалению.
                Извиняюсь, вызвал без кеша [[myMenuParents]] и вроде заработало!!!
Спасибо!!!
                    Спасибо!!!
                Евгений, Вы не подскажите, каким будет сниппет работающий в шаблоне для страниц любой вложенности.
Сейчас Ваш вариант выводит нужные ресурсы только в родителях, а во вложенных ресурсах водит все ресурсы своего родителя.
Уделите минутку, подскажите!
Спасибо!
                    Сейчас Ваш вариант выводит нужные ресурсы только в родителях, а во вложенных ресурсах водит все ресурсы своего родителя.
Уделите минутку, подскажите!
Спасибо!
                У Вас изначально немного странная задача — выводить ресурсы по ID.
И в первой версии сниппета у меня опечатка была, 0 стоял вместо 2.
                    И в первой версии сниппета у меня опечатка была, 0 стоял вместо 2.
$id = $modx->resource->id;
$parents = $modx->getParentIds($id, 10, array('context' => 'web')); //10 - это глубина(высота) поиска
$parents[] = $id; // в массив можно добавить текущий id ресурса
foreach($parents as $parent) {
   switch($parent) {
	case 2: return '226,223,658';
	case 8: return '17,227,489,710';
	case 37: return '751,40,718,720';
	case 47: return '76';
	default: return;
  }
}            
                Если parents не указан, в него подставляется id текущего ресурса            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.