我自己经常用discuz做系统。discuz作为中国开源论坛的老大,现在来说pc端的程序已经很完善。也有很多的不如意的地方,今天这篇文章就暂时不说不如意的地方了。主要说说采用discuz后,如何修改它的模板。相信很多朋友是很想修改它的模板的。
我想先从discuz的架构原理谈起。
discuz的架构总体来说也是分三层的:与数据库交互层即db层、逻辑控制层、前台显示层。
db层分管的工作呢,是和数据库打交道,简单的说就是用户发表一篇文章,这个文章得放在哪储存呢,前台显示层就把这些数据交给逻辑控制层,逻辑控制层呢再加工处理一下,最后统一交给干粗活的db层。db层把数据放在相应的数据库表里。同理,要是浏览文章和浏览评论这些内容的时候,也是要倒一遍这样的流程。
那么问题来了:为什么要倒这几遍手呢?
问题很简单又很复杂:简单的是只有分工,系统才会运行的流畅,系统运行的才会合理安全,程序编程和社会工作其实是一个原理的。复杂的是系统在可扩充性、制定接口上以及其他协同开发上都必须采用的。试想下:一个好几十号人共同开发的程序,你开发你的他开发他的,那不是太乱了。另外,如果数据量太大,需要换一个更大级别的数据库该如何换呢。
好吧,这个问题暂时谈到这里。只需要了解原理就可以应付discuz的模板编辑了。
discuz的模板编辑是前台显示层的工作。对于这么多的用户,discuz系统肯定会有数据交互和数据浏览大的问题,比如杭州19楼这样每天几十万人访问的系统。如果每个数据都进行一遍数据库的提取,那不得把数据库累死,直接机器挂掉。
为了防止这个普遍的问题,discuz在前台显示层采用了缓存机制、门户方面采用了生成静态html机制。这些都是一次生成后,便不再和数据库打交道了。这样,对于服务器来说,是不是很清爽呢,只需要管理文件传输就可以了,那些数据库的脏活累活服务器很少管了。页面自然浏览快了,嗖嗖的。
so,discuz的模板制定时需要考虑到缓存的common.css和真正的common.css。你需要修改模板类目里的css,html文件,然后再次更新一下缓存,再次生成一遍html,这样才会达到修改discuz的模板。
具体的修改路径在哪个文件夹呢?
在/template/default/common/common.css
如果想直接看效果,可以先修改缓存的css文件,但是一定要记住,他在下一次缓存更新时是还原的,也就是说从源template里的那个common.css里生成的。
缓存的css控制文件在这里:/data/cache/style_1_common.css 如果需要找其他文件的话,也是在那个目录里的。
模板也是如此的原理。只不过,模板分为了门户、论坛等的文件夹,即/template/default/下的不同文件目录里,相应的也会在data/cache/目录里生成缓存文件,或者采用生成静态html里的话,修改完html后需要重新生成一下。
剩下的就是学习div+css了。在这里就不多说了。
目前我修改过的discuz模板很多,比如梦见蛇、周公解梦这两个就是完全不同的模板样式。也有站长之家的那种样式修改,大家也可以参考参考。
下一篇文章,我想谈谈我的织梦文章修改的心得,采用的案例是那个股票配资网站。
转载请注明:二飞日志 ? 修改discuz模板都需要注意什么