WordPress:随机化帖子并保持重新加载的顺序


Wordpress: Randomize Posts & Keep Order on Reload

我有一个包含 20 个帖子的类别,我想为每个访问博客的用户洗牌页面上的帖子。

我知道我可以用它来随机化帖子:

<?php query_posts('orderby=rand');?>

但是,如何在随机化后保持顺序,使其不会在刷新时不断波动?

所以就像我说的,最简单的方法是将这些 id 按该顺序保存在 cookie 中,因此 cookie 的结果可能如下所示:

[12344,13413,13421,44445,12342]

您也可以将ID的顺序保存在数据库中,并在cookie中保存引用。更安全一点,但也多做一点工作。而且我不知道,或者帖子的ID无论如何都可以在前端的某个地方找到,所以如果是这种情况,我建议将它们保存在您的cookie中。

在您的前端中,您可以检查cookie是否已设置,如果不是随机获取帖子。如果设置了cookie,您可以像这样显示它们:

query_posts( array( 'post__in' => $_COOKIE['cookie'], 'orderby' => 'post__in' ) );