pbootcms网站修改CSS样式后自动更新缓存和自动增加版本号
本文由广东鲸弘科技有限公司提供惠州小程序开发 / 网站建设专业分享。
需求介绍
一般来说样式修改后,因为浏览器有缓存上线的网站简单刷新没有变化,这个时候需要强制刷新(ctrl+f5)才可以立马看到效果,但是客户不懂看不到修改效果还要解释。
其实可以给修改的样式增加版本号来解决,这样就可以一刷新看到最新样式,例如常见的手动添加版本号方式:
<link rel="stylesheet" href="{pboot:sitetplpath}/css/common.css?v=1"> //加?v=1,每次后面的数字变化那么有没办法让版本号每次自动变化呢,而且要有修改了去刷新才变化,没修改去刷新不变化。这种自动方法是有的,下面就来介绍下相关操作。
实现步骤
2022-12-24不二开不影响在线更新方式,使用pbootcms扩展标签来实现,新建个标签{ver(静态文件路径)}
1、打开扩展标签专属文件 ppshomecontrollerExtLabelController.php
①引入Config
use coreasicConfig; //@pbhtml

②在$this->test();下方增加$this->smartVersion();
③新增对应标签函数smartVersion()和auto_version方法
//静态文件尾巴增加时间版本号标签@pbhtml-versionprivate function smartVersion(){ $pattern = '/{vers?({([^}]+)}/([^}]+))}/'; if (preg_match($pattern, $this->content, $matches)) { $this->content = preg_replace_callback($pattern,function($matches){ if($matches){ return $this->auto_version(APP_THEME_DIR.'/'.$matches[2]); } },$this->content); }}// 自动更新时间版本号@pbhtml-versionpublic function auto_version($url){ $ver = filemtime($_SERVER['DOCUMENT_ROOT'].$url); return $url.'?v='.date("YmdHis",$ver);}示例图:

2、修改原有调用样式或JS的标签,只要是静态文件的均可添加,规则{ver(xxxxxx)}
原有的:
{pboot:sitetplpath}/skin/css/style.css){pboot:sitetplpath}/skin/js/cms.js修改后:
{ver({pboot:sitetplpath}/skin/css/style.css)}{ver({pboot:sitetplpath}/skin/js/cms.js)}参考以上方式在需要的地方修改即可
效果演示
当通过ftp修改了style.css文件内的样式后保存,到页面上刷新就会发现样式尾巴多了串时间版本号,这样就达到了刷新即可看到样式变化。

小知识补充:PbootCMS扩展标签在网站在线升级后不会被覆盖,可以放心的扩展使用。
-
PbootCMS怎么授权中文域名,方法在这里
2025-08-29
84 -
Pbootcms自定义字段的数据验证与安全过滤:防止XSS与SQL注入
2026-04-28
20 -
在宝塔傻瓜式为pbootcms配置伪静态教程
2025-08-20
510 -
响应式网站开发避坑:viewport 设置 + 媒体查询 + 适配测试方法
2025-12-19
99 -
PbootCMS API接口开启配置教程,新手也能快速上手
2026-04-20
31 -
用PbootCms API接口实现Ajax无刷新分页 实现 点击加载更多 功能
2026-01-29
70 -
PbootCMS自定义表单与邮件通知集成:用户提交后自动发送邮件
2026-05-06
5 -
PBOOTCMS如何嵌入PDF在线预览功能(手机端如何在线预览PDF文件)
2025-09-02
96 -
用PbootCms扩展定制一个简单天气预报小插件
2025-09-21
125 -
pbootcms模板利用宝塔面板计划任务执行自动推送网址到百度
2025-08-29
93
咨询热线:
联系电话
联系邮箱
联系QQ
方案获取
