我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

话说,苏南大叔安装了最新版的thinkcmf系统。现在要开始做一套新的皮肤,那么我们该如何动手呢?根据以往经验,这个过程不会太复杂。当然结合thinkcmf的后台管理皮肤切换的功能,我们就可以动手制作自己的网站皮肤风格了。说白了,就是二次开发个新的网站。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - thinkcmf-theme
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-1)

那么,本篇文章中,就暂时说说如何新建一个thinkcmf的皮肤的问题,抛个砖引个玉。

新建一个皮肤包

thinkcmf的皮肤文件,放置在目录/public/themes/下,这一点在上篇thinkcmf文章中有所提及。并且苏南大叔,也说过了。这个位置,如果在默认的nginx设置下,会有代码泄露的安全风险,这点也要一定注意。在本文中,先假设并没有这种安全漏洞。我们需要在这个/public/themes/目录下,新建一个自己的文件夹,暂时起名叫sunan。然后,我们在这个文件夹下面放置一个manifest.json文件,文件内容如下:

{
  "name": "sunan的cmf模板",
  "version": "0.0.1",
  "demo_url": "https://demo.newsn.net",
  "author": "sunan",
  "lang": "zh-cn",
  "author_url": "https://newsn.net",
  "keywords": "模版关键词",
  "description": "模板描述文字"
}

当然,这个文件的内容,你还可以从同级的simpleboot3文件夹下面的json文件中获得。记得一定要修改name,其他的就是看你自己的需求进行更改了。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 004
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-2)

识别这个新的皮肤

虽然这个新建立的皮肤,并没有任何实质性的功能。但是放置了合适的manifest.json文件之后,这个皮肤就可以在后台中识别出来了。我们就可以从后台里面操作,启用新的皮肤了,很简单方便。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 000
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-3)

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 001
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-4)

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 002
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-5)

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 003
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-6)

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 005
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-7)

配置文件位置

实际上,后台修改皮肤设置,在代码上就表现为:app/config.php这个文件。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 010
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-8)

我们可以修改其中的cmf_theme_path来设置前台模版总目录的位置,并用cmf_default_theme来设置该目录下面,默认启用哪个主题皮肤。另外的cmf_admin_theme_pathcmf_admin_default_theme是用于设置后台管理的皮肤的。

但是值得说明的是:data/conf/config.php中的值会覆盖掉你的在app/config.php中的设置哦。所以,请注意相关层次关系。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 099
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-9)

截图中的设置,就是苏南大叔修改后的值。这样设置之后,默认的皮肤,就不会被外界访问到了。因为已经跳出了根目录。但是皮肤中的静态资源(img/css/js等),还是要单独提出来放到public目录下面的。这个是由静态资源的特殊属性所决定的。

那么皮肤模版中的静态资源的引用地址,就也需要进行修改。下图中就是一个小小的提示点。具体的可以参见后面的教程。

苏南大叔:如何新建thinkcmf皮肤?如何识别切换皮肤风格? - 009
如何新建thinkcmf皮肤?如何识别切换皮肤风格?(图10-10)

总结

皮肤模版要好看实用,还需要更加安全不是。所以,本文中所涉及的保护源码的方式,将在下篇文章中仔细描述。感谢您的继续关注和阅读。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    theme