WP_QUERY不会返回某些子页面,即使数据库显示了它们

时间:2016-12-20 作者:frazerjay

我有好几页都是这样的

父页(ID 24)

我正在使用的子页面A子页面B子页面C子页面D子页面E子页面FWP_Query 返回所有子页面,但只有部分返回。在DB中,所有子页都具有相同的父ID 24。

// args
$args = array(
    \'numberposts\'   => -1,
    \'post_type\'     => \'page\',
    \'post_parent\' => 24
);

// query
$the_query = new WP_Query( $args );

// loop through posts
if( $the_query->have_posts() ): ?>
    <?php while( $the_query->have_posts() ) : $the_query->the_post();?>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php endwhile; ?>
<?php endif; ?>
比方说B&;C不要返回。我尝试将其分配给一个新的父级(ID25),并修改查询以返回父级25的子页面,缺失的页面显示良好。

除了ACF PRO之外,我几乎没有其他插件,在最近为上述页面创建一些新页面和字段之前,ACF PRO运行良好。

1 个回复
SO网友:frazerjay

满脸通红——但很高兴分享结果,并为其他人省去痛苦。在过去的两天里,我一直在追踪一个幽灵,wp\\u查询返回的帖子数量是默认的,这是特定于页面的。在我所在的页面上,似乎设置为10篇帖子。

您只需指定要覆盖默认值的帖子数。在我的例子中,我想要所有的参数,所以我在查询参数中添加了以下内容。

\'posts_per_page\' => -1
我真的希望这对某些人有所帮助,黑暗的几天里,我开始错误地指责那些表现良好的插件。

在中发现此信息wp query to get child pages of current page

相关推荐

如何在wp-Query中比较不同的时间戳以获取事件自定义帖子类型?

我有一个带有自定义元数据库的自定义帖子类型(as seen on wptheming.com) 并且希望进行查询以显示即将发生的事件,例如在侧边栏中,过去的日期被忽略。但我需要一个当前时间的值来和事件开始时间进行比较。现在我从current_time(\'mysql\') 看起来是这样的:2012-02-16 13:15:31元的开始时间如下所示:201108121100如何使这两个日期具有可比性?我可以在查询中执行吗?或者是否有其他解决方案?以下是我到目前为止的查询(值留空,时间戳回显):<?ph