我需要一些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>
但我需要一些功能。 当我在第一页时,我想只看到这个页面的子页面,而不是菜单中的所有页面。
我如何解决这个问题?
由于
答案 0 :(得分:0)
使用函数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
属性,因此只返回第一级子项。