Wordpress:自定义WP_Query返回所有“分页”参数值的首页帖子

时间:2016-10-14 20:39:04

标签: php ajax wordpress

我正在尝试使用AJAX为我的Wordpress博客页面创建“加载更多帖子”按钮。负责传递'分页''偏移''posts_per_page'参数的Javascript函数正在成功完成(我已经检查了一百次!)。

偏移 posts_per_page 参数工作正常(我反复更改其值以对此进行测试)但 WP_Query 始终返回帖子首页,即使每次加载更多帖子时 $ page 的值都会更改。

只是因为 $ paged 值在某个地方搞砸了,我使用静态数字作为'paged'参数但它仍然只显示首页帖子,无论什么价值。

一切正常,我没有收到错误消息,启用了调试。帖子确实加载 - 只是不正确的。

其他信息:我自己的主题,现在没有插件运行。

以下代码来自我的 functions.php 文件中的函数。

    $args = array(
        'suppress_filters' => true,
        'post_type' => 'post',
        'orderby'    =>  'date',
        'order'      =>  'desc',
        'posts_per_page' => $ppp,
        'paged'    => $page,
        'offset'  => $offset, //I've tried simply putting 3, 5 etc
    );

    $loop = new WP_Query($args);

    if ($loop -> have_posts()) : 
        while ($loop -> have_posts()) : $loop -> the_post();
            the_title();
        endwhile;
    endif;
    wp_reset_postdata();

我只输入了我认为相关的代码,以便更容易阅读。如果您想要我添加一些东西,请告诉我。谢谢你!

编辑:直接使用query()函数使其工作但我真的不想弄乱主查询对象...这只是意味着我的代码中的其他所有东西都是精细。 WP_Query只是很奇怪。

1 个答案:

答案 0 :(得分:0)

您不能同时使用offsetpaged - 您只能使用其中一个。一起使用它们可以打破分页。如果您想要在第2页上显示的帖子(假设您有10个页面),请使用

'paged' => 2

'offset' => 10