Доброго времени суток. Имеется код сниппета
<?php
/**
* Входной параметр $max.
* Сколько заголовков нужно выводить.
*/
$max = (isset($max)) ? $max : "20";
$dID = $modx->documentIdentifier; // Получаем ID просматриваемого документа.
$parentId = array_pop($modx->getParentIds($modx->documentIdentifier,1)); // Получаем родителя.
$children = $modx->getActiveChildren($parentId,'menuindex','ASC');
$j=0;
$key = false;
while(!$key && $j<count($children)){
$key = array_search($dID,$children[$j]);
$j++;
}
$output = '<ul>';
// Цикл показа постов
if(!empty($key) && count($children)>1) {
for ($i=1;$i<$max+2;$i++) {
if ($j-$i>=0) {
$simular = $modx->getDocument($children[$j - $i]['id'], "pagetitle");
if ($children[$j - $i]['id']!=$dID)
$output .= '<li class="related-list"><a href="'.$modx->makeUrl($children[$j - $i]['id']).'">'.$simular['pagetitle'].'</a></li>';
}
}
}
echo $output.'</ul>';
?>
Сниппет находит родительский ресурс и выводит полный список дочерних ресурсов. В настоящий момент он выводит только ресурсы следующие за тем, который сейчас активен. Никак не соображу, как его заставить его также выводить список ресурсов, до активного. Вообще, задача заключается в выводе сиблингов, но насколько мне известно, в Evo готового решения нет. Поэтому извращаюсь сижу.