sitesCMS简介
sitesCMS 是基于 JFinal 的 多站点 CMS内容管理系统,遵循JFinal极简设计理念,轻量级、易扩展、学习简单,除JFinal外无其他重度依赖。精简的多站点功能设计,极易二次开发,一天一个网站不是梦。完善的API模块,支持 微信小程序 、APP等各类小程序前端对接,打通移动端开发渠道,sitesCMS 不只是 CMS。
官方网站:http://sitescms.top/
视频教程:https://ke.qq.com/course/3551225?tuin=92419b8c
sitesCMS升级
调整配置文件加载逻辑,自动根据当前启动程序的环境进行配置文件选择。在开发/测试环境启动时,自动加载配置文件cmsConfig.txt
和cmsConfig-dev.txt
(存在时才加载),在生产环境则自动加载cmsConfig-pro.txt
配置文件。所以大家只需使用这几个配置文件进行开发和生产的配置,其他的交给sitesCMS就行了,不用每次都手动选择不同的配置文件。这部分的源码如下:
static void loadConfig() {
if (p == null) {
//判断是否是部署生产,自动区分加载文件
if(SitesKit.isDeployMode()){
LogKit.info("生产环境,加载生产配置文件 cmsConfig-pro.txt");
p = PropKit.use("cmsConfig-pro.txt");
} else {
LogKit.info("开发环境,加载测试配置文件 cmsConfig.txt cmsConfig-dev.txt");
p = PropKit.use("cmsConfig.txt");
p.appendIfExists("cmsConfig-dev.txt");
}
}
}
需要说明的是环境判断的逻辑,当前是什么环境是根据rootClassPath
路径来判断的,当rootClassPath
路径存在workspace或eclipse或idea或test等目录下时认为是开发环境,否则认为是生产环境,详细的代码如下,大家还可以根据自己的实际需要进行完善调整:
private static boolean buildDeployMode() {
String rootClassPath = PathKit.getRootClassPath();
if (StrKit.notBlank(rootClassPath)) {
if (rootClassPath.contains("workspaces")
|| rootClassPath.contains("workspace")
|| rootClassPath.contains("eclipse")
|| rootClassPath.contains("temp")
|| rootClassPath.contains("test")
|| rootClassPath.contains("target")
|| rootClassPath.contains("idea")) {
return false;
}
}
return true;
}
这样就能自动的识别发布环境并智能选择配置文件了,不用总是纠结配置文件修改的问题了,也不用担心配置文件是否使用错误的问题了。
注意:生产环境部署的目录不能包含test/temp这种路径,不然会认为是开发环境,原因就是上面的代码逻辑。
官网模板升级
官网模板升级了两个地方:
第一个是文章详情页精简,只显示文章内容,不再导航等其他内容,这个方式是参考微信公众号,样式也有借鉴;
第二个是首页文章列表中显示【置顶】字样,对于置顶文档进行醒目标示。
微信小程序升级
小程序UI全面升级,使用uView UI进行样式重构,整体样式更加现代化,更加符合手机端浏览。
可以直接扫描感受