Поддержка Проблемы и решения get_pages в виде маркированного списка

  • Всем привет.
    Существует такая конструкция:

    <?php
    $mypages = get_pages( array(
        'child_of'      => $post->ID,
        'sort_order'    => 'ASC',
        'sort_column'   => 'ID','post_parent','post_name','post_title','menu_order',
        'meta_key'      => '',
        'meta_value '   => '',
        'number'   => ''
        ) );
    foreach( $mypages as $page ) {      
    	// $content = $page->post_content; //  публикация контента всей страницы
            // $content = $page->post_excerpt;     //  публикация отрывка (цитата) страницы
    	// пропустим страницу без контента
    	// if ( ! $content ) continue; // если $content = $page->post_excerpt; не содержит отрывка, то такую запись пропустит и она не будет выведена
    	// $content = apply_filters( 'the_content', $content );
    	?>
    	            <li class="***">
                            <h2 style="">
                                <a href="<?php echo get_page_link( $page->ID ); ?>"><?php echo $page->post_title; ?></a>
                            </h2><!--. gh-link1 H2 -->
                        <!--
                            <div class="***1">
                            <?php //echo $content; ?>
                            </div>< !--. content -- >
                        -->
    	<?php
    };?>
    

    Чёт ума не приложу как сделать так, чтобы вывод был не в виде:
    <li><h2><a>****</a></h2></li>
    А формировался с учётом иерархии страниц, в виде:

    
    <ul>
       <li>
           <h2><a>****</a></h2>
           <div>content</div>
       </li>
          <ul>
             <li><h2><a>****</a></h2><div>content</div></li>
             <li><h2><a>****</a></h2><div>content</div></li>
          </ul>
    </ul>
    

    Помогите пожалуйста.