Deprecated: Function create_function() is deprecated in /www/wwwroot/www.woniu.wang/usr/plugins/AntiSpam/Plugin.php on line 75
WordPress首页缓存不刷新的一种可能:Cookie过滤引起的问题 - 蜗牛工作室_刘永个人博客

WordPress首页缓存不刷新的一种可能:Cookie过滤引起的问题

发布于 / 知识文档 / 0条评论 / Tags: none / 7 次浏览

  wordpress不刷新的解决办法:1、将所有时段的cookie删除,然后检查首页是否正常刷新;2、检查cookie是否被过滤,然后找到相关的cookie后,填入对应的cookie过滤选项栏即可。

  wordpress不刷新怎么办

  本教程操作环境:Windows10系统、WordPress5.4.2版、Dell G3电脑。

  不刷新怎么办?

  如果使用到了一些缓存软件后,可能会遇到Wordpress首页缓存不刷新的问题。出现发布文章或者登陆后,首页没有变化的情况。

  这种情况很多时候是cookie引起的原因。

  例如使用了Batcache插件的话,就容易产生这种可能。

  Batcache在检测到一些cookie 值时会禁用缓存,advanced-cache.php 中的判断代码如下:

  

// Never batcache when cookies indicate a cache-exempt visitor.
if ( is_array( $_COOKIE) && ! empty( $_COOKIE ) ){

foreach ( array_keys( $_COOKIE ) as $batcache->cookie ){
    if ( $batcache->cookie != 'wordpress_test_cookie' && 
        ( substr( $batcache->cookie, 0, 2 ) == 'wp' || substr( $batcache->cookie, 0, 9 ) == 'wordpress' || substr( $batcache->cookie, 0, 14 ) == 'comment_author' ) ){
        batcache_stats( 'batcache', 'cookie_skip' );
        return;

}
}
}

  登录后复制

  这就表示 Batcache 发现如果请求中的 cookie 是以 wp、wordpress 或者 comment_author 开头时就禁用缓存,这样后台管理、用户评论等功能才能正常工作。

  如果插件出现冲突的话,例如插件产生了wpxxyy cookie,就刚好被Batcache 插件的过滤过滤了”wp”开头的cookie,Batcache全页面缓存就失效了,需要将其取消,修改cookie过滤范围。

  

// Never batcache when cookies indicate a cache-exempt visitor.
if ( is_array( $_COOKIE) && ! empty( $_COOKIE ) ){

foreach ( array_keys( $_COOKIE ) as $batcache->cookie ){
    if ( $batcache->cookie != 'wordpress_test_cookie' && $batcache->cookie != 'wpmp_switcher' && substr( $batcache->cookie, 0, 12 ) != 'wp-settings-' && 
        ( substr( $batcache->cookie, 0, 2 ) == 'wp' || substr( $batcache->cookie, 0, 9 ) == 'wordpress' || substr( $batcache->cookie, 0, 14 ) == 'comment_author' ) ){
        batcache_stats( 'batcache', 'cookie_skip' );
        return;

}
}
}

  登录后复制

  cbd06e27c2700617440e77217bd79d8.jpg

  同理,以chrome浏览器为例,通过F12/网站设置/隐私设置/Cookie/查看Cookie来找出所有的本站Cookie,检查一下相关的Cookie是否被过滤了。

  处理:

  1、将所有时段的Cookie删除,检查首页是否正常刷新

  2、如果Cookie删除完后,首页还是无法正常刷新,则检查一下Cookie是否被过滤了

  Supercache、WT3、Fastest cache等缓存软件都有排除Cookie过滤的选择,原因就在此。

  找到相关的Cookie后,填入对应的Cookie过滤选项栏就可以了。

  当然,这只是Wordpress首页缓存不刷新的一种可能,但是很常见。

  推荐学习:《WordPress教程》

    评论区(暂无评论)