更新了博客的CSS样式迟迟未生效,就是缓存的锅!

原创 野人  2020-04-16 09:01  阅读 49 次

有时候看到别人博客比较好看的样式就想应用到自己的博客上,尽管自己会那么一点代码,这真的是个折腾“病”,因为明明我是过去寻找新的项目,看下能不能发现新的写文章思路,然后一看到喜欢的样式,或者是一些js特效啥的,就停不下来了,然后更新就告一大段落了,折腾完后又后悔,没事瞎折腾干呢?有啥用,无法就是自己看的舒服,对网站,收益有帮助吗(现实的一B)?

当然,折腾过程中也是有收获的,比如修改了博客的style.css,本站目前没有上任何的静态缓存和cdn,所以应该是立即生效的,如果是在电脑端的话,Ctrl+F5强制刷新,基本上都能解决样式不生生效的问题,而在手机端则不同了,死活要手动清除浏览器的缓存才会立马生效(我是用的UC浏览器,感觉就这个浏览器最奇葩),于是就想嘛,不能每次都要手动的去清除缓存,这太麻烦了,万能的搜索引擎,万能的度娘,总会搜到遇到同样烦恼的问题,总会有这强大的网友来助力,也许这就是互联网的好处之一吧。

废话不多说了,直接上代码,由于博客是用的wp程序,只要在主题目录中找到【function.php】,然后添加相应的代码就可以解决这个烦恼了,代码如下:

function theme_scripts() {

wp_enqueue_style('style', get_stylesheet_uri(), array() , filemtime(get_stylesheet_directory().'/style.css'));//加载主题的样式,这里要记得更换成自己的style.css路径

add_action('wp_enqueue_scripts', 'theme_scripts' );

这里有个小问题要注意,就是有的网站是把style.css直接写死到主题的header.php里面了,如果没有从header.php删除style.css引入的代码,就会造成style.css重复加载的问题。

原理解析:

比如:引入css文件的代码<link href="style.css?ver=1.8" />这样,问号后面参数ver=1.8其实对css文件浏览器访问没有任何影响的,打开还是一样的文件,只是改变版本号,这样客户端浏览器就会重新下载新的css文件,以起到刷新缓存的作用。

本文地址:http://www.yerenwz.com/1894.html
版权声明:本文为原创文章,版权归 野人 所有,欢迎分享本文,转载请保留出处!

发表评论

  1. 钱路子博客
    钱路子博客 【农民】 @回复

    代码小白路过