【发布时间】:2014-10-24 20:03:32
【问题描述】:
我有一个非常正常的页面层次结构,如下所示:
- Main page
- - Child page
- - Child page 2
- - Child page 3
- - - Sub child page
- - - Sub child page 2
- - Child page
- - Child page
- - - Sub child page
- Main page 2
- - Child page
...
当我在任何页面上时,我想在侧边栏上显示一个包含所有子页面的菜单,但不是主页。 这个,我可以用我从另一个答案中得到的这组论点来做:
<?php
$child_of_value = ( $post->post_parent ? $post->post_parent : $post->ID );
$depth_value = ( $post->post_parent ? 2 : 1 );
$args = array(
'depth' => $depth_value,
'sort_column' => 'menu_order',
'sort_order' => 'asc',
'title_li' => '',
'child_of' => $child_of_value,
'echo' => 0
);
$children = wp_list_pages($args);
?>
这样,菜单中会显示属于同一主页的所有子页面。问题在于子子页面。我只想在他们的直接父页面中显示它们,但与所有其他页面一起显示。
因此,例如,如果我在一个没有任何其他子页面的子页面中,它将如下所示:
- - Child page <---
- - Child page 2
- - Child page 3
- - Child page
- - Child page
如果我在第三个,它会看起来像这样:
- - Child page
- - Child page 2
- - Child page 3 <---
- - - Sub child page
- - - Sub child page 2
- - Child page
- - Child page
如果我在子页面中,我会显示相同的内容。 有什么办法可以通过修改参数来实现这一点?
【问题讨论】:
标签: wordpress