if($pid[’id’] == 2) {}aqui te añado el codigo que hice para que le heches un vistazo, lo que consigue es mucho mas simple que lo que propones asi que...
while ($pid[’id’] != 2) {
$id = $modx->documentIdentifier;
$pid = $modx->getParent($id,1,"id");
if($pid[’id’] == 2) {}
while ($pid[’id’] != 2) {
$id = $pid[’id’];
$pid = $modx->getParent($id,1,"id");
}
$parent_id = $id;
$css_class = $class;
$separator = $sep;
$children = $modx->getDocumentChildren($id,1,0,’id,pagetitle,alias,description,longtitle,hidemenu’, ’hidemenu=0’,’menuindex ASC,pagetitle’, ’ASC’);
$childrenCount = count($children);
if($children==false) {
return ’’;
}
$menu .= "";
$menu .= ’<div class="mainmenu2">’;
for($x=0; $x<$childrenCount; $x++) {
if($x==0){$menu .= ’<div class="mainmenu3">’;}else{}
if ($x<=4){
if ($children[$x][’id’]==$modx->documentObject[’id’]){
$menu .= ’<div class="selectedmenu_bottom_2" style="line-height:’.(90/5).’px;"><a class="menulinkselected_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{
if($children[$x][’hidemenu’]==0){
$menu .= ’<div class="noselectedmenu_bottom_2" style="line-height:’.(90 /5).’px;"><a class="menulink_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{$menu .= "adgagasdg";}}
if($childrenCount ==1 && $x==0 ){$menu .= ’</div>’;
}else{
if( $childrenCount==2 && $x==1){$menu .= ’</div>’;
}else{
if( $childrenCount==3 && $x==2){$menu .= ’</div>’;
}else{
if( $childrenCount==4 && $x==3){$menu .= ’</div>’;
}else{if( $childrenCount>=5 && $x==4 ){$menu .= ’</div>’;}}}}
}}else{
if ($x>4 and $x<=8){
if($x==5){$menu .= ’<div class="mainmenu3">’;}else{}
if ($children[$x][’id’]==$modx->documentObject[’id’]){
$menu .= ’<div class="selectedmenu_bottom_2" style="line-height:’.(90/5).’px;"><a class="menulinkselected_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{
if($children[$x][’hidemenu’]==0){
$menu .= ’<div class="noselectedmenu_bottom_2" style="line-height:’.(90 /5).’px;"><a class="menulink_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{$menu .= "adgagasdg";}
if($childrenCount==6 && $x==5){$menu .= ’</div>’;
}else{
if($childrenCount==7 && $x==6){$menu .= ’</div>’;
}else{
if($childrenCount==8 && $x==7){$menu .= ’</div>’;
}else{
if($childrenCount==9 && $x==8){$menu .= ’</div>’;
}else{
if($childrenCount >=10 && $x==9){$menu .= ’</div>’;}}}}}}
}else{if ($x>8 and $x<=12){
if($x==9){$menu .= ’<div class="mainmenu3">’;}else{}
if ($children[$x][’id’]==$modx->documentObject[’id’]){
$menu .= ’<div class="selectedmenu_bottom_2" style="line-height:’.(90/5).’px;"><a class="menulinkselected_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{
if($children[$x][’hidemenu’]==0){
$menu .= ’<div class="noselectedmenu_bottom_2" style="line-height:’.(90 /5).’px;"><a class="menulink_bottom_2" href="’.$children[$x][’alias’].’.html">’.$children[$x][’pagetitle’].’</a></div>’;
}else{$menu .= "adgagasdg";}}
if($childrenCount<=11 && $x==10){$menu .= ’</div>’;
}else{
if($childrenCount==12 && $x==11){$menu .= ’</div>’;
}else{
if($childrenCount==13 && $x==12){$menu .= ’</div>’;
}else{
if($childrenCount==14 && $x==13){$menu .= ’</div>’;
}else{
if($childrenCount>=15 && $x==14){$menu .= ’</div>’;}}}}}}}}}
$menu .= "</div>";
$menu .= "";
return $menu;
el moomenu lo tiene aunque si lo haces en html no te hace falta.