通过wordpress中的函数获取子页面列表

ppcbkaq5  于 2023-01-20  发布在  WordPress
关注(0)|答案(2)|浏览(167)

我试图通过wordpress在父页面上显示一个子页面列表。最好的方法是,如果你在关于页面(/about)上,但你想去会见团队页面(/about/meet-the-team),当你在关于页面上时,它应该会显示一个链接到会见团队页面。
我现在有这个密码

function getPagesHierarchy() {
    $pagesQuery = new WP_Query(array(
        'post_type'     => 'page',
        'posts_per_page' => -1,
        'post_parent'   => 0,
        'order'         => 'ASC',
        'post_status'   => 'publish'
    )) ;
    if ($pagesQuery->have_posts()) {
        while($pagesQuery->have_posts()) {
            $pagesQuery->the_post() ;
            the_title() ;
            echo '<br>' ;
        }
    }
    
}

这样做的目的是获取父页面的结构,如下图x1c 0d1x所示
这是目前获得所有的父页面,这是罚款,但我还需要它显示的父页面下的孩子。所以,例如,它会是这样的东西;

任何帮助,这将是非常感谢,如果我可以给予任何其他协助我正在努力实现请让我知道。

ars1skjm

ars1skjm1#

您可以使用wp_list_pages()并通过child_of传入父页面ID以获取其子页面,您可以参考the WP docs获取更多信息。

wp_list_pages(array(
    'child_of' => $parentId
));
p4tfgftt

p4tfgftt2#

可能最好使用get_pages()

function getPagesHierarchy() {
    
    $pages = get_pages(array('parent' => 0)); 
    foreach ( $pages as $page ) {
        echo $page->post_title;
        echo '<br>' ;
        $child_pages = get_pages(array( 'child_of' => $page->ID)); 
        foreach ( $child_pages as $child_page ) {
            echo $child_page->post_title;
            echo '<br>' ;
        }
    }
}

相关问题