Php Wordpress:随机化帖子&;重新装填时保持秩序

Php Wordpress:随机化帖子&;重新装填时保持秩序,php,wordpress,Php,Wordpress,我有一个20篇文章的分类,我想为每个访问博客的用户洗牌页面上的文章 我知道我可以用它来随机化帖子: <?php query_posts('orderby=rand');?> 但是,我如何在随机后保持顺序,以便在刷新时不经常更改?正如我所说,最简单的方法是将这些id按顺序保存在cookie中,这样cookie的结果可能会如下所示: [12344,13413,13421,44445,12342] 您还可以在数据库中保存ID的顺序,并在cookie中保存引用。更安全一点,但也需要更

我有一个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' ) );

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

[12344,13413,13421,44445,12342]
您还可以在数据库中保存ID的顺序,并在cookie中保存引用。更安全一点,但也需要更多的工作。我不知道,或者帖子的ID在前端的某个地方是可用的,所以如果是这样的话,我建议把它们保存在你的cookie中

在前端,您可以检查cookie是否已设置,如果不只是随机获取帖子的话。如果设置了cookie,则可以如下所示显示它们:

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

我想最简单的方法就是把这些id按顺序保存在一个cookie中。或者在cookie中使用引用ID保存这些服务器端。。。但是,如果cookie是使用PHP设置的,那么您可以在下次访问时重新排序帖子。至少如果您总是显示相同的帖子,否则您可以在参数中使用
post\u\u来选择与以前相同的帖子。另一个解决方案可能是在Wordpress中编写自定义查询,这样您就可以使用
FIELD()
按特定顺序对帖子进行排序:@erikvande即使我设置了cookie,如何将cookie与帖子的顺序绑定,以便在重新加载时不会更改?我想最简单的方法是将这些id按该顺序保存在cookie中。或者在cookie中使用引用ID保存这些服务器端。。。但是,如果cookie是使用PHP设置的,那么您可以在下次访问时重新排序帖子。至少如果您总是显示相同的帖子,否则您可以在
参数中使用
post\u\u来选择与以前相同的帖子。另一个解决方案可能是在Wordpress中编写自定义查询,因此您可以使用
FIELD()
按特定顺序对帖子进行排序:@erikvande即使我设置了cookie,我如何将cookie绑定到帖子的顺序,以便在重新加载时不会更改?我必须手动存储cookie还是有其他方法?我必须手动存储cookie还是有其他方法?