WordPress网站在不清除缓存的情况下不显示更改

时间:2017-08-14 作者:JohnSnow

我正在建立一个带有下划线主题的WordPress网站,它位于飞轮上。每次我对页面进行更改时style.css 除非我执行硬重新加载/清除缓存,否则不会拾取文件。

显然,我希望它能够立即加载到每个人的计算机上,而无需清除缓存。这是什么原因?我该如何解决?

谢谢

2 个回复
最合适的回答,由SO网友:gdaniel 整理而成

如果文件正在缓存,那么您使用的任何缓存解决方案都能正常工作!这就是为什么有一个清晰的缓存按钮可用。通常会缓存JS和CSS文件。在开发过程中,我建议更改正在缓存的文件的版本。这可以通过更新wp\\u enqueue\\u脚本(js文件)和wp\\u enqueue\\u样式(css文件)函数来实现,这些函数通常位于函数中。php。摘自codex:

wp_enqueue_style( string $handle, string $src = \'\', array $deps = array(), string|bool|null $ver = false, string $media = \'all\' )
$ver:(string | bool | null)(可选)指定样式表版本号(如果有)的字符串,它作为查询字符串添加到URL中,以用于缓存破坏。如果版本设置为false,则会自动添加与当前安装的WordPress版本相同的版本号。如果设置为null,则不添加任何版本。默认值:false

总之,请在函数中找到上面的函数。php文件,并将第四个参数($ver)更改为字符串。类似于“0.1”,然后每次保存新样式时。css文件,将字符串更新为“0.2”,依此类推。这样,浏览器将始终从服务器请求新文件。这是开发过程中的一个很好的解决方案。

您从未指定您使用的缓存插件,或者飞轮是否为您提供了缓存插件,但您应该有可以更改的设置,以便更频繁地清除缓存。

SO网友:HOY

可能与通过修改.htaccess.

例如,我的。htaccess具有access 1 month 对于此操作,您可以如下所示:

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/css "access plus 60 seconds"
ExpiresDefault "access 1 month"
</IfModule>

结束