Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >WordPress 开发之让浏览器自动加载最新的CSS、JS文件(免刷新缓存)

WordPress 开发之让浏览器自动加载最新的CSS、JS文件(免刷新缓存)

作者头像
Jeff
发布于 2018-01-19 08:33:17
发布于 2018-01-19 08:33:17
4.8K0
举报
文章被收录于专栏:DeveWorkDeveWork

在开发WordPress 主题的时候,如果频繁更新主题的CSS、JS文件但主题已经上线,如何让访客的浏览器获取最新的CSS、JS文件而非等到浏览器删除缓存后?下面就介绍一个简单的方法。

版本号参数

相信有过开发经验的童鞋都知道是用版本号参数控制。即原来比如说css 文件路径代码是如下面的:

http://devework.com/wp-content/themes/Devework/style.css

那么如果更新了css 文件,可以为此添加版本号,即改为:

http://devework.com/wp-content/themes/Devework/style.css?v=2

但是,在WordPress 中如果每修改一次就要手动更新版本号那太累了。如何让版本号自动更新(即?v=后面的数字自动更新)?

时间戳

想必你也知道了,用时间戳代替版本号。在WordPress 中,用时间戳代替版本号的处理方式可以更加方便一点。

http://devework.com/wp-content/themes/Devework/style.css?v=<?php echo time(); ?>

或者:

http://devework.com/wp-content/themes/Devework/style.css?v<?php echo filemtime($pathToCSS); ?>" />

WordPress 中呢?

有过WordPress 主题开发经验的都知道,WordPress 中引用主题的styl.css 文件的路径是直接使用函数<?php bloginfo('stylesheet_url'); ?>的,这么一来,在header.php 中的路径代码如下:

<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen, projection" />

虽然手动修改路径也可以,但我们并不推荐该方法,你可以hook一下该wp_enqueue_style() 函数。

将下面的代码添加到主题的functions.php 文件下即可为styl.css 文件添加时间戳版本号:

add_action( 'wp_enqueue_scripts', 'add_styles' ); function add_styles() { $css_file = get_stylesheet_directory() . '/css/style.css'; wp_enqueue_style( 'css-file', get_stylesheet_directory_uri().'/css/style.css', NULL, filemtime($css_file) ); }

js文件的话依照上面的照搬即可实现。

如此一来,就能保证浏览器每次访问都是最新的css、js文件,而非采用缓存。

本文参考国外网站paulund,感谢原作者!如有错误,欢迎雅正!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013/11/03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
以文件修改时间戳做 CSS、JS 等文件的版本号,减少主动清理更新缓存的次数
每次修改 WordPress 的 css 和 js 文件,都要主动清理文件的缓存才能生效,尤其是采用了 oss 和 cdn 回源。使用函数 filemtime() 获取文件修改时间戳,并以此做版本号,
Yangsh888
2022/03/23
9320
WordPress 通过模板文件和自带的函数引入 css/js 的两种方法
WordPress 引入css/js 是我们制作主题时首先面对的一个难点,任何一款主题都要加载自己的 css,js,甚至很有可能还需要加载 Jquery 文件,网上方法特多,说法不一,我们今天借鉴 wordpress 官方最新的 twentysixteen 主题来学习总结一下 WordPress 引入 css/js 各种常用方法,以及最优化的加载方法。
Yangsh888
2022/03/28
1.9K0
WordPress主题开发,从入门到精通。
相关文档:https://www.wpzhiku.com/document/wordpress-plugin-basics/
房东的狗丶
2023/02/17
10.8K0
WPJAM「静态文件」:一键合并 WordPress 插件和主题的 JS 和 CSS 文件,加快页面加载速度
每个插件和主题可能有自己的 CSS 和 JavaScript 内联代码或者文件,如果 CSS 和 JavaScript 内联代码或者文件一多,就开始出现了两个比较难受的问题:
Denis
2023/04/13
7.1K0
WPJAM「静态文件」:一键合并 WordPress 插件和主题的 JS 和 CSS 文件,加快页面加载速度
如何在 WordPress 主题中使用本地托管的 Google 字体
前面我们介绍 WordPress 官方要求主题作者切换到本地托管字体,今天简单说说如何实现在本地托管的 Google 字体。
Denis
2023/04/13
7370
【WordPress优化二】去掉不必要的东西
主题选好了还没有完,因为WordPress系统自身还拥有一些优化的空间,因此我们可以对WordPress进行一些适量的优化。
夏末浅笑
2019/01/10
1.5K0
WordPress面试题
将域名解析到另一台主机涉及修改域名服务器记录(DNS)和邮件服务器记录(MX)。以下是一般步骤:
777nx
2023/11/16
5440
HTML中css和js链接版本号的用途
在搜索引擎中搜索关键字 .htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css、js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就可以从缓存中获取css、js等静态文件,而不必从你的服务器再次下载读取,这样在一定程度上加快了网站的打开速度,又可以节约一下你的服务器流量。
阳光岛主
2019/02/18
5.7K0
Google Fonts导致WordPress 速度问题的三个解决方案
本来实在是不想写这个的,因为相关方法在圈子里面已经烂大街了。但无奈,一些客户将近期的Google Fonts导致 WordPress 打开速度慢的现象归咎于我的主题——真TM 比窦娥还冤。所以,有必要在这里说下。 2015.2.26更新:Google Fonts 已可正常访问,相关插件可卸,本文已失效 Google Fonts导致WordPress 速度问题之原因 WordPress 自3.8+版本后加入了Google Fonts(别问我Google Fonts是什么了),然后捏,因为近期敏感周期(35号)
Jeff
2018/01/19
2.3K0
WordPress 根据浏览器 user-agent 按需加载CSS 文件
在进行前端开发的时候,为了兼容性,比如hack 那个讨厌的IE 浏览器,我们常常需要<!--[if IE X]>这类IE 判断代码来实现hack 的效果。而在WordPress 中,我们可以借助PHP 的功能,通过判断浏览器user-agent 来按需加载CSS 文件——如此不仅仅只是对IE hack,对于chrome 、firefox 等主流浏览器也可以实现不同的样式效果。 先看下面的代码,添加到主题的functions.php 文件下: function dw_enqueue_styles() { gl
Jeff
2018/01/19
1K0
WordPress 路径相关函数总结(二):主题路径相关函数
上一篇文章是《WordPress 路径相关函数总结(一):站点路径相关函数》,今天这一篇则是针对WordPress 主题的函数,对于开发WordPress 主题的开发者很有帮助;相关函数也可以在WordPress 官方文档找到相应的更详细的用法。 还是以本站 http://devework.com 为例子: get_theme_root_uri() 获取存放主题的目录URI echo get_theme_root_uri(); //输出:http://devework.com/wp-content/them
Jeff
2018/01/19
1.3K0
WordPress主题制作(四):制作头部模板header.php
当我们用文本编辑器打开从WordPress主题制作:开始前的准备下载的Yii-Candy中的 .php 文件,不难看出他们头部的代码都非常的相似!我们可以提取这部分相似的代码,放到一个单独的文件header.php中,各个页面想用这部分代码的时候再用WordPress的get_header()包含进去就可以达到所有页面头部内容一致,不再需要给每个页面都写一次这部分代码了,我们后期维护起来也至需要修改header.php即可。
Yiiven
2022/12/15
1.5K0
WordPress 函数:wp_enqueue_script() 安全引入 JS
​WordPress 主题最佳引用 js 文件的方法是使用 WordPress 内置的 wp_enqueue_script() 函数,通过该函数可以安全地将javascript 代码加入到 WordPress 创建的页面中,不仅可以最大限度地保证兼容性,还是提高 WordPress 性能效率的一个方法。
Yangsh888
2022/03/23
9270
WordPress 5.4.2版本发布,BUG维护和安全更新
嗨!您位于 https://www.baidu.com 的站点已被成功升级到WordPress 5.4.2。
陌涛
2020/06/15
2.1K0
DW Replace Open Sans:将WordPress 后台中的open-sans字体加载源从Google Fonts换为360 CDN
针对最近因为Google fonts被墙导致WordPress 打开慢的问题,Jeff 在上一篇《Google Fonts导致WordPress 速度问题的三个解决方案》提出的方案中其中是禁止加载Google fonts ,但是禁止后WordPress 后台的英文字体会变成你当前系统默认的——不好看。为此Jeff 借助网络上的代码开发了这款插件,可一键将WordPress 后台中的open-sans字体加载源从Google Fonts替换为360的CDN 加载源。 2015.2.26更新:Google
Jeff
2018/01/19
8590
更改WordPress Gutenberg编辑器的宽度
要更改WordPress Gutenberg编辑器的宽度,您需要为其加载自定义CSS规则。以下是如何快速更改宽度的概述,包括加载样式表和添加将增加Gutenberg编辑器内容区域宽度的特定规则。
许都博客
2021/06/16
9120
通过修改function文件来使WordPress网站加载速度更快
说明:WordPress由外国人开发的,使用了很多国外网站服务,比如Gravatar镜像、谷歌字体之类的,由于我们在国内,链接速度自然就慢了很多,有的还时不时的被墙,很影响使用,而且功能很强大,但是很多我们都不需要,这里我们可以通过修改function.php来精简WordPress,从而使网站速度变快。
用户8851537
2021/07/26
7310
禁止/移除 WordPress 4.2 中前台自动加载的 emjo 脚本
如果你更新了WordPress 最新版本的4.2 版本,查看网页源代码你会发现WordPress 会自动在head加载一段用于支持emjo 表情的脚本(JS+CSS),对于大部分人来说,这个是十分鸡肋的功能,反而影响加载速度。 原因分析 脚本就是类似下面的代码: <script type="text/javascript"> window._wpemojiSettings = {"baseUrl":"http:\/\/s.w.org\/images\/core\/emoji\/72x72\/","ext":
Jeff
2018/01/22
1.1K0
WordPress 主题教程 #3:开始 Index.php
开始 Index.php 是从零开始创建 WordPress 主题系列教程的第三篇。在介绍了 WordPress 主题的一些规则和术语,以及对 WordPress 模板和模板文件了解之后,现在是开始动手创建 WordPress 主题了的时候。
Denis
2023/04/15
1.1K0
WordPress 主题教程 #3:开始 Index.php
WordPress 开发之使用WordPress 3.8+后台图标(dashicons)
伴随着WordPress 3.8 的新界面,WordPress 官方为后台UI 引进了目前贼流行的webfont(又称 icon font),官方独立项目名为dashicons。webfont 本质上是图标——通过字体文件作为载体的矢量图,好处就是,可以比较方便自由修改大小、颜色等字体样式且不像图片那样放大会失真——所以说乔布斯炒起来的retina 屏幕不在话下了。那么,如果你是WordPress 开发者,你可以通过以下方式在你开发的主题或插件中使用WordPress 3.8+后台图标(dashicons)
Jeff
2018/01/19
1.4K0
WordPress 开发之使用WordPress 3.8+后台图标(dashicons)
推荐阅读
相关推荐
以文件修改时间戳做 CSS、JS 等文件的版本号,减少主动清理更新缓存的次数
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档