在我的主页上显示9个帖子,我有一个“加载更多”按钮(带有ajax),它会调用其他9个帖子,依此类推。目前,我正在按“日期”订购,但我想随机订购。问题是我的第一个wp_query orderby rand显示9个随机帖子,当我加载更多帖子时,我的第二个wp_query orderby随机也可以显示前9个帖子中的同一帖子。
如何将2个wp_query随机化为相同的随机数?还是有其他方法可以做到这一点?
正如社区成员已经建议的那样,我试图将可见的ID存储在数组中,并像这样使用post__not_in
:
$query = new WP_QUERY(array(
'post_type' => 'post',
'posts_per_page' => 9,
'orderby' => 'rand',
'post__not_in' => $postNoIn,
'paged' => $paged
));
但这不能解决我的问题。
$paged
变量是我的帖子的当前页码。我有32个帖子,现在我要9乘9,所以共有4页。当我使用上面的第二个wp_query显示时,我得到9条随机帖子减去可能的9条第一帖子,因此我可以拥有少于9条帖子,并且在到达最后一页时查询停止。我将有大约28个帖子,而不是32个,导致查询在第4页停止,直到显示所有帖子为止。
预先感谢您的回答!
答案 0 :(得分:1)
只需将已经可见的ID存储在数组中的某个位置,当请求更多负载时,发送该数组,然后将其包含到$args
$args = array (
...
'post__not_in' => array( 1, 2, 3),
...
);