浏览器缓存导致‘Orderby=rand’返回相同的帖子

时间:2014-05-09 作者:Tony Fire

我有一个代码,可以在用户访问主页时将其重定向到随机帖子:

if (have_posts()) {
    query_posts(\'orderby=rand\');
    while (have_posts()) {
        the_post();
        wp_redirect(get_permalink());
    }
}
问题是,每当我没有登录时,它都会将我重定向到同一个帖子。我怀疑W3 Total Cache是罪魁祸首,因为它将登录用户置于异常状态。

然而,即使未选中“Cache front page”,并且将“index.php”和“*/”放入页面异常列表,问题仍然存在。我甚至试着禁用整个页面缓存,但还是什么都没有。

最后,我尝试禁用浏览器缓存和voilá,随机帖子!但这不是一个可行的解决方案,我不明白浏览器缓存如何导致“orderby=rand”返回相同的帖子,而不是页面缓存。

有什么帮助吗?

EDIT: 只有在我通过网站重新加载页面(单击a href=“/”)链接或通过jquery重定向到a href=“/”)链接时,它才会返回相同的帖子。但是,当我通过浏览器地址栏重新加载页面时,效果很好。如何?

1 个回复
最合适的回答,由SO网友:Tony Fire 整理而成

通过更改HTML上的“Expires header lifetime”解决了此问题;XML到“1秒”。但不确定这是否会降低其他方面的性能。

结束

相关推荐

如何禁用MULTSITE下的W3 Total Cache“Performance”菜单?

我偶然发现了以下文章W3 Total Cache - How to disable “Performance” menu under multisite?然而,在使用最新版本的WordPress 3.7和W3 Total Cache v0对其进行测试时。9.3它似乎不再起作用。如何从上面的链接更新代码以使其正常工作我还有以下代码,它可以从管理顶栏中删除“性能”//Remove Performance function ds_w3tc_remove_adminbar() { globa

浏览器缓存导致‘Orderby=rand’返回相同的帖子 - 小码农CODE - 行之有效找到问题解决它

浏览器缓存导致‘Orderby=rand’返回相同的帖子

时间:2014-05-09 作者:Tony Fire

我有一个代码,可以在用户访问主页时将其重定向到随机帖子:

if (have_posts()) {
    query_posts(\'orderby=rand\');
    while (have_posts()) {
        the_post();
        wp_redirect(get_permalink());
    }
}
问题是,每当我没有登录时,它都会将我重定向到同一个帖子。我怀疑W3 Total Cache是罪魁祸首,因为它将登录用户置于异常状态。

然而,即使未选中“Cache front page”,并且将“index.php”和“*/”放入页面异常列表,问题仍然存在。我甚至试着禁用整个页面缓存,但还是什么都没有。

最后,我尝试禁用浏览器缓存和voilá,随机帖子!但这不是一个可行的解决方案,我不明白浏览器缓存如何导致“orderby=rand”返回相同的帖子,而不是页面缓存。

有什么帮助吗?

EDIT: 只有在我通过网站重新加载页面(单击a href=“/”)链接或通过jquery重定向到a href=“/”)链接时,它才会返回相同的帖子。但是,当我通过浏览器地址栏重新加载页面时,效果很好。如何?

1 个回复
最合适的回答,由SO网友:Tony Fire 整理而成

通过更改HTML上的“Expires header lifetime”解决了此问题;XML到“1秒”。但不确定这是否会降低其他方面的性能。

相关推荐

Cache of site on browser

我正在制作一个wordpress网站,它包含一个媒体链接。当服务器上的媒体文件发生更改时,不会在我的网站上进行更新。要查看我的新媒体,我必须在浏览器中打开“新建”选项卡,否则它会在媒体缓存到浏览器中时显示以前的结果。即使我刷新页面,它也会显示以前的结果。要查看更新的结果,我只需在“新建”选项卡中打开我的网站。我怎样才能解决这个问题。