我的网站上有一个产品页面,我有一个数组来存储所有以产品为父页面的页面。这可以正常工作,但是由于某种原因,它会在10个条目后停止填充数组。这是我填写数组的代码。
$args = array(
'post_parent' => get_page_by_path( 'products' )->ID,
'post_type' => 'page',
'numberposts' => -1,
'post_status' => 'any');
// The Query
$parent = new WP_Query( $args );
$n = 0;
// The Loop
if ( $parent->have_posts() ) {
echo '<ul>';
while ( $parent->have_posts() ) {
$parent->the_post();
echo '<li>' . get_the_title() . '</li>';
$n++;
echo $n;
}
echo '</ul>';
// Restore original Post Data
wp_reset_postdata();
}
这将返回页面的标题,并回显一个数字以对其进行计数。输出显示标题,但在10 pages
之后停止,即使我有12 pages
并将产品作为父项。奇怪的是,当我添加另一个包含产品的页面作为父页面时,它会将列表中的最后一个页面推出,并将新添加的页面放在数组的第一位。
欢迎任何帮助!
答案 0 :(得分:0)
使用posts_per_page
代替numberposts
。
$args = array(
'post_parent' => get_page_by_path( 'products' )->ID,
'post_type' => 'page',
'posts_per_page' => -1,
'post_status' => 'any');
答案 1 :(得分:0)
您可以通过在posts_per_page
数组中设置$args
来定义返回的帖子数。
$args = array(
'post_parent' => get_page_by_path( 'products' )->ID,
'post_type' => 'page',
'numberposts' => -1,
'post_status' => 'any',
'posts_per_page' => '100');