加入收藏
您当前的位置:首页 > WordPress

wordpress:如何获取父页面下的所有子页面列表

时间:2014-01-14 23:27:40  来源:  作者:

最近一直没发表文章了,老伍也一直在忙;寻思着该发表点内容露一下小face;^_^
在找主题时,看到国外一篇文章推荐获取父页面下的所有子页面列表的相关插件时,我觉得这有戏;
 因为这个功能完全可以不用那么麻烦地去下载插件、安装插件。。。。
 在functions.php里添加些片段就O了啊,干嘛整得那么复杂呢?

示例如下:

function dit_get_all_children_pages(){
    if ( is_page() ){
        //当前页面的ID
        $current_obj_id = get_queried_object_id();
       
        $args = array(
            'post_status' => 'publish',
            'post_type' => 'page',
            'post_parent' => $current_obj_id,
            'orderby' => 'menu_order',
            'order' => 'ASC',
            'nopaging' => true,
        );   
       
        $child_pages = get_posts($args);
        $html = "";
        foreach ($pages as $post) {
            setup_postdata($post);
            $url = get_permalink($post->ID);
            $title = $post->post_title;
            $html .= sprintf("<a href='%s'>%s</a>", $url, $title);
        }

        wp_reset_postdata();
        if ( !empty( $html ) ){
            echo $html;
        }
    }

}


在page.php中添加dit_get_all_children_pages()函数即可调用。
 当然,示例代码只是显示了所有子页面的标题列表,你还可以显示更多内容。

用了wordpress一段时间后发现,一些小功能真的没必要安装那么多插件来实现,动动手,其实很简单。
 

特别说明:本站部分资源来源网络,仅供学习与参考,请勿用于商业用途。转载请注明来自:www.phpld.cn PHPL中文网
上一篇:wordpress:玩转Admin Bar
下一篇:wordpress: 如何调用单篇文章内的所有图片附件?
推荐资讯
DedeCMS将data目录迁移到web根目录之外
DedeCMS将data目录迁移
相关信息
头条信息
热门信息