Создание навигации по страницам WordPress с некоторыми опциями - PullRequest
0 голосов
/ 27 декабря 2011

Мне нужна помощь с WordPress.Идея заключается в создании мультиопциональной навигации в боковой панели.Иерархия выглядит так:

<ul>
<li>First Page
    <ul>
    <li>First SubPage</li>
    <li>Second SubPage
        <ul>
        <li>First Sub-SubPage</li>
        <li>Second Sub-SubPage</li>
        <li>Third Sub-SubPage</li>
        </ul>
    </li>
    </ul>
</li>
<li>Second Page</li>
<li>Third Page
    <ul>
    <li>First SubPage</li>
    <li>Second SubPage
        <ul>
        <li>First Sub-SubPage</li>
        <li>Second Sub-SubPage</li>
        <li>Third Sub-SubPage</li>
        </ul>
    </li>
    </ul>
</li>
</ul>

Но мне нужны некоторые функции.Когда я на первой странице, я хочу видеть только подстраницы этой страницы, а не все страницы в меню.

Как мне решить эту проблему?

Спасибо

1 Ответ

0 голосов
/ 27 декабря 2011

Используйте функцию get_pages http://codex.wordpress.org/Function_Reference/get_pages

Вы можете использовать следующую функцию.Вызовите его на боковой панели с $page_id as <current page id>.

<?php    
function show_child_list($page_id) {
    $child_pages = get_pages( array( 'child_of' => $page_id, 'sort_column' => 'menu_order', 'sort_order' => 'ASC', 'parent' => $page_id) );
    echo '<ul>';
    foreach($child_pages as $child) {
        echo '<li>'.$child->post_title.'</li>';
        show_child_list($child->ID);
    }
    echo '</ul>';
}

Обновление 1:

Добавлен атрибут 'parent' => $page_id в третьей строке, поэтому возвращаются только дочерние элементы первого уровня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...