我正在为通过父母ID循环并显示所有子页面编写一个简短的代码,但是我不确定如何使循环更自定义。
这是我的代码: add_shortcode('home-page-listing','get_list');
function get_list( $atts ) {
ob_start();
$atts = shortcode_atts( array(
'ids' => ''
), $atts );
if($atts['ids']!='')
{
$id_array = explode(',',$atts['ids']);
$homePages = new WP_Query( array(
'post_type' => 'page',
'post__in'=>$id_array,
'order' => 'ASC',
'orderby' => 'post__in',
'posts_per_page' => -1
) );
if ($homePages->have_posts()){?>
<div class="">
<?php while ( $homePages->have_posts() ) : $homePages->the_post(); ?>
//here's html template code
<?php endwhile;
wp_reset_postdata(); ?>
</div>
}
}
}
现在我可以使用[home-page-listing id=1,2,3,4]
显示所有选择的页面ID ,但是我想这样做:
[home-page-listing parentID=4]
循环浏览所有子页面并显示为字体,而是检查要显示的所有页面ID。
谢谢!
答案 0 :(得分:0)
它很容易使用 post_parent
的参数 WP_Query
。请检查以下示例
$homePages = new WP_Query( array(
'post_type' => 'page',
'post_parent'=>$parentID,
'order' => 'ASC',
'orderby' => 'parent',
'posts_per_page' => -1
) );
有关WP_Query click here的更多信息