仅在某些页面上登录 - wordpress

时间:2016-05-19 06:38:50

标签: php wordpress login

我自己并不知道问题的原因,所以我知道你没有太多可继续的事情。但是我想在这里问一下,因为我真的无法弄清楚为什么wordpress表现得像它一样。

问题是,当您登录时,首先一切接缝都很好,您将被重定向到我的帐户页面。但是,如果您再转到首页,则不再显示已登录,有时它会帮助刷新网站,有时则不会。如果你然后回到另一页然后它说 你登录了。所以这只发生在某些页面上。

在另一个网站上也会出现同样的问题,会员可以下载电子书。如果您不是会员,则会有一个注册表格,以便您成为会员然后下载电子书。但问题是,当人们登录时,他们仍然无法下载该书,因为该网站没有检测到他们登录。

我怀疑它与缓存有关,因为我们遇到了一些问题。但不知道如何解决这个问题。

我们今天需要发送这本电子书,这非常重要,所以非常感谢所有的帮助!

2 个答案:

答案 0 :(得分:2)

似乎其他人有logged out issue with W3 Total Cache

从线程,一些潜在的解决方案:

  1. 访问yoursite的wp-admin/admin.php?page=w3tc_pgcache#general,并选中“不要为登录用户缓存网页”选项。

  2. /wp-admin/admin.php?page=w3tc_browsercache#html_xml中,如果选中设置缓存控制标头,请确保缓存控制策略:不是以下之一:

  3. Cache
    Cache with max-age
    

    此外,如果设置过期标题选项也未选中,则会有所帮助。如果选中,浏览器可能会在看到过期标题后为登录用户缓存内容。

    如果上述方法无效,请尝试:

    1. 检查html/xml下的设置缓存控制标题,然后在下拉菜单中选择缓存并进行验证

答案 1 :(得分:0)

你看过WP_Object_Cache吗?

如果您怀疑在生成管理面板的代码中发生了不需要的缓存,那么您可以使用WP_Object_Cache中的函数来清除它。

WP_Object_Cache是​​WordPress'用于缓存重新生成计算成本高昂的数据的类,例如复杂数据库查询的结果。

尝试清除所有缓存数据的函数wp_cache_flush()