今年4月在尝试 >> 本地IDE编辑器修改帝国CMS线上模板 时仔细研究过帝国CMS各类模板存放数据库的问题,并发布了前面这篇文章,只是当时对各类模板具体存放的表单名提及甚少,今天使用CDN加速图片时又面临了这个问题:使用CDN图片加速需要使用新的图片路径,如果同步修改所有模板,虽然简单却依然是不小的工作量,若存在上百个模板,恐怕就不止是增加工作量的问题了,但使用MySQL命令可快速解决这个问题。
基于此,对帝国CMS首页/封面/列表/文章页等各类模板存放数据表表名做个总结。文末顺带简单介绍使用MySQL命令批量替换模板字段值的方式。
注:此处表单前缀统一为 phome_,若修改过表前缀请进行对应修改。
模板名
公共模板/首页模板
存放表名 >> phome_enewspubtemp
// 需要注意的是,本表为公用模板表名,首页模板存放于字段 indextemp之中,此外搜索、分页、登录、下载等一系列模板存于此表之中。
封面模板
存放表名 >> phome_enewsclasstemp
列表模板
存放表名 >> phome_enewslisttemp
内容模板
存放表名 >> phome_enewsnewstemp
公共模板变量
存放表名 >> phome_enewstempvar
标签模板
存放表名 >> phome_enewsbqtemp
评论列表模板
存放表名 >> phome_enewspltemp
模板备份
存放表名 >> phome_enewstempbak
// 帝国CMS显示最近3次修改记录,但所有修改记录全都保留在这里
或许你已经得出简单的结论:帝国CMS所有模板名均包含temp,也可以在数据库中直接输入 temp 进行搜索。
MySQL命令替换模板字段值
// 此处以列表模板 phome_enewslisttemp 为例,将字段值 www.20174174.com/templets/images替换为files.20174174.com/templets/images
>> UPDATE `phome_enewslisttemp` SET `temptext`=REPLACE(temptext,'www.20174174.com/templets/images','files.20174174.com/templets/images')
// 一定要注意本示例中域名后跟随的templets/images(自行修改为相应路径),若直接替换域名将改变所有链接与调用。
// 括号中第一个值为要替换的内容,第二个值为需要的替换结果,若有使用变量可同步修改。