wordpress不刷新怎么办-LMLPHP

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

wordpress不刷新怎么办?

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

如果使用到了一些缓存软件后,可能会遇到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;
}
}
}
登录后复制

wordpress不刷新怎么办-LMLPHP

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

处理:

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

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

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

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

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

推荐学习:《WordPress教程

以上就是wordpress不刷新怎么办的详细内容,更多请关注Work网其它相关文章!

09-06 19:14