我目前正在使用此代码(根据codex)在父页面上显示子项,并在子项上显示父页面的子项:
<?php if($post->post_parent)
$children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
else
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
if ($children) { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php } ?>
我想补充一点,如果在辅助子页面(孩子的孩子)上,那么就显示它的父母和父母的兄弟姐妹。
感谢您的帮助! :d
答案 0 :(得分:1)
<?php
if($post->post_parent)
{
//get the parent post
$parent = get_post($post->post_parent);
//check to see if we have a grandparent
if($parent->post_parent)
{
$page_list = wp_list_pages( array( 'child_of' => $parent->post_parent, 'echo' => false, 'depth' => 1 ) );
}
else
{
$page_list = wp_list_pages( array( 'child_of' => $post->post_parent, 'echo' => false, 'depth' => 1 ) );
}
}
else
$page_list = wp_list_pages( array( 'child_of' => $post->ID, 'echo' => false, 'depth' => 1 ) );
if ($page_list) {
?>
<ul>
<?php echo $page_list; ?>
</ul>
<?php } ?>
这将检查帖子是否有父母,然后该帖子是否有父母。 $page_list
应该是父级及其兄弟级的页面列表。 'depth' => 1
告诉WordPress只获得一个级别的页面。这将阻止它获取这些页面的孩子