get_posts没有返回所有帖子

Raf*_*oni 26 wordpress

我必须手动挂载博客文章,但我不确定这是否是正确的工作方式,它只带9页,每篇有4个帖子,但博客有83个帖子!

<?php
    $paged = get_query_var('paged');
    $args = array(
        'numberposts'       => 4,
        'offset'            => $paged*4,
        'orderby'           => 'post_date',
        'order'             => 'DESC',
        'post_type'         => 'post',
        'post_status'       => 'publish',
        'suppress_filters'  => true
    );
    $posts_array = get_posts( $args );
?>
Run Code Online (Sandbox Code Playgroud)

不管怎么说,还是要谢谢你.

AJ *_*ane 79

问题是你的'numberposts'设置为4将它设置为-1以获取所有帖子:

 'numberposts'       => -1,
Run Code Online (Sandbox Code Playgroud)

如果您未在此处设置号码,WordPress将从您的仪表板设置中提取帖子数量(在"设置" - >"阅读"下)

  • 男人...你保存我的一天..谢谢..顺便说一句我没有设置numberposts ..但它有WP的默认值所以我把它设置为-1强迫WP得到它 (3认同)

Lib*_*bin 5

以下注释来自此法典部分.

注意:使用偏移量时,上述查询应仅用于其中包含多个帖子的类别,否则将不会有输出.

因此,为了显示所有帖子,每个类别应该至少有2个帖子.

您可以尝试循环来获取所有帖子.同时检查循环操作.