[РЕШЕНО]Проверка наличия дочерней ветви в меню

Главные вкладки

Аватар пользователя delta222 delta222 29 марта 2011 в 17:25

Здравствуйте! Имеется скрипт выводящий форматированное меню нулевого уровня в блоке:


<?php
$menu
=menu_navigation_links('primary-links',0);

    

$i 12000;
    
$o 50;
    
foreach(
$menu as $key=>$item)
{
    
$pos strpos($key,"active-trail");
    if (
$pos !== false){$active="current active";}

    echo

"<li class=\"maximenuCK item$o level0 " $active "\" style=\"z-index:$i;\"><a class=\"maximenuCK\" href=\"/".$item['href']."\"><strong class=\"titreCK\">".$item['title']."</strong></a></li>";
    
$i--;
    
$o++;
    unset(
$active);
}
?>

Требуется после вывода очередного пункта меню произвести проверку на наличие дочерних обьектов и вывести их на экран, если нет или список дочерних кончится пройти дальше до следующего пункта нулегвого уровня.
Подскажите пожалуйстя функцию, желательно с примером.

Комментарии

Аватар пользователя cerf cerf 29 марта 2011 в 18:41
<?php
function custom_menus_sitemap_content($title) {
    
$output .= "<div id=\"sitemap\">";
    
$output .= custom_menus_sitemap_render_menu(menu_tree_all_data("primary-links"));
    
$output .= "</div>";
    return 
$output;
}

function 

custom_menus_sitemap_render_menu($menu$level 0) {
    
$output "<ul>";
    foreach (
$menu as $item) {
        
$link $item["link"];
        if (
$link["hidden"]) {
            continue;
        }

        

$output .= "<li class='level-$level'><a href=\"" check_url(url($link["href"], $link["options"])) . "\" class='level-$level'>" $link["title"] . "</a>";

        if (

$item["below"]) {
            
$output .= custom_menus_sitemap_render_menu($item["below"], $level+1);
        }
        
$output.= '</li>';
    }
    
    
$output .= "</ul>";
    return 
$output;
}
?>