如何新建thinkcmf皮肤?如何识别切换皮肤风格?
发布于 作者:苏南大叔 来源:程序如此灵动~话说,苏南大叔安装了最新版的thinkcmf系统。现在要开始做一套新的皮肤,那么我们该如何动手呢?根据以往经验,这个过程不会太复杂。当然结合thinkcmf的后台管理皮肤切换的功能,我们就可以动手制作自己的网站皮肤风格了。说白了,就是二次开发个新的网站。
那么,本篇文章中,就暂时说说如何新建一个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
,其他的就是看你自己的需求进行更改了。
识别这个新的皮肤
虽然这个新建立的皮肤,并没有任何实质性的功能。但是放置了合适的manifest.json
文件之后,这个皮肤就可以在后台中识别出来了。我们就可以从后台里面操作,启用新的皮肤了,很简单方便。
配置文件位置
实际上,后台修改皮肤设置,在代码上就表现为:app/config.php
这个文件。
我们可以修改其中的cmf_theme_path
来设置前台模版总目录的位置,并用cmf_default_theme
来设置该目录下面,默认启用哪个主题皮肤。另外的cmf_admin_theme_path
和cmf_admin_default_theme
是用于设置后台管理的皮肤的。
但是值得说明的是:data/conf/config.php
中的值会覆盖掉你的在app/config.php
中的设置哦。所以,请注意相关层次关系。
截图中的设置,就是苏南大叔修改后的值。这样设置之后,默认的皮肤,就不会被外界访问到了。因为已经跳出了根目录。但是皮肤中的静态资源(img/css/js等),还是要单独提出来放到public
目录下面的。这个是由静态资源的特殊属性所决定的。
那么皮肤模版中的静态资源的引用地址,就也需要进行修改。下图中就是一个小小的提示点。具体的可以参见后面的教程。
总结
皮肤模版要好看实用,还需要更加安全不是。所以,本文中所涉及的保护源码的方式,将在下篇文章中仔细描述。感谢您的继续关注和阅读。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。