Discuz!X1.5解析 添加风格模板及相关函数
添加一个自己的风格的大致的步骤
第一步,我们直接用默认模板拉一个副本出来,改个名字,进入后台-->界面-->模板管理,填写刚刚的副本的信息。?
第二步,修改刚刚建立的副本的discuz_style_default.xml文件,其中:
·<item id="Data">下的templateid要填写在后台模板管理中新增的模板信息的id或者留空,否则即使进入后台的风格管理去安装这个模板也会一直显示的是默认风格的复本。
·其他标签应该还是很好理解的,改成自己的站点或者名字信息就可以了,比较方便的方法是进后台后去安装风格后直接编辑就行。
·preview.jpg和preview_large.jpg分别是你想做的风格的缩略图和大图
第三步,安装风格,将该风格设为默认,这个就不用说什么了。
第四步,开始你自己风格的开发.....
下面是牵涉到的一些函数
1.source/admincp/admincp_styles.php
后台进行风格添加的功能,if($operation == 'import')以下的代码是添加风格。
require_once libfile('function/importdata');引入该文件并调用了import_styles方法进行添加。
2.source/function/function_importdata.php
看看import_styles在干嘛,根据$dir配置文件路径就是discuz_style_default.xml文件的路径取出配置放到$stylearrays中,接着foreach($stylearrays as $stylearray)读取其中的数据。
这里可以看到对$stylearray['templateid']的判断,这里如果你没有改这个参数,还是1的话,安装的就会是默认模板的复本,通过if(DB::result_first("SELECT COUNT(*) FROM ".DB::table('common_style')." WHERE name='$stylearray[name]'"))的判断。
接下来向common_style风格表和common_stylevar风格参数表中写入新风格的数据。
最后根据$updatecache决定是否更新缓存。
至此新风格的添加及其相关代码的分析结束~~~