0

私は現在、このコード(コーデックスごと)を使用して、親ページに子を表示し、親ページの子を子に表示しています:

<?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

4

1 に答える 1

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 に 1 レベルのページのみを取得するように指示します。これにより、それらのページの子を取得できなくなります

于 2012-06-28T20:56:00.047 に答える