Discuz3.3精仿小米风格整站模板制作——1、新建模板方案
术语说明:
Discuz模板制作官方说明: http://faq.comsenz.com/library/template/made/made_extend.htm
本部分内容是对Discuz官方提供的模板概述的扩展说明。请参阅上述网址,对Discuz模板制作有个初步认识。discuz模板文件位于网站根目录/template/目录下。其中子目录default是其默认模板,站长可以根据需要在此目录下新建模板目录以放置自己的模板。
Discuz的模板是固定文件名的htm文件。例如,首页的模板文件叫discuz.html。其中,默认模板的首页模板文件位于站点根目录/template/default/forum/discuz.html。discuz对模板做了两点基本要求:
- 模板名称固定——对于不同的功能,模板的文件名是固定的,例如首页的模板名叫discuz.htm,板块的主体列表页模板文件名叫forumdisplay_list.htm等等。http://faq.comsenz.com/library/template/filelist/filelist_index.htm 此网址给出了默认模板目录下各个模板文件所对应的功能区域名称。我们所要做的工作就是按照这个目录列表,创建对应的htm文件,以实现论坛换肤。
- 模板文件扩展名固定为htm——html文件的扩展名有两种,分别为htm和html。以htm为后缀的文件一般在早期linux中比较常见。现在大多为html为后缀,同时这也是w3c推荐的做法。
个人认为,discuz如此设计恨怪异,让新上手的使用者理解起来非常困难。良好的设计方案应该让使用者自由选择模板才对。例如,对于论坛首页这个功能而言,使用者能自由决定是选择x模板方案下的index.html还是default.php或是其他什么文本文件。如此做法更符合一般人的直觉。后续,作者将对discuz的源码做小小修改,使其可以识别html后缀的文件(修改为识别html后缀文件或其他后缀文件,例如asp、jsp、php等代码大同小异,使用者可以自行参照修改)。在discuz模板目录下,有一特殊目录——common,此目录下的文件为非必须模板文件,它只是将各个模板的公用部分提纯,其本身可有可无,完全依照制作者的思路而定。
discuz读取模板的规则(以首页模板举例):首先读取后台指定的模板目录中是否存在discuz.htm文件,如存在,直接以此文件做为模板,如不存在,则取默认模板文件中的discuz.html文件作为模板。
Discuz新建模板方案的主要流程
一、新建风格方案
登录后台,点击顶部【界面】功能区,页面刷新后,左侧会显示关于【界面】的功能导航,此时选择左侧的【风格管理】。在新增输入区域输入自定义的风格名称,点击【新增】。此时系统会复制一套空的风格方案。(风格方案实质上是一堆css和图片路径设置,先忽略这个,后续再详细说明具体设置)然后选择,当浏览者使用什么浏览设备时,采用此风格(模板)方案。系统提供了
电脑版
手机标准版
手机触屏版
手机极简版
四个选项,其中,【电脑版】必选。其他可忽略,此处的判断是通过http头进行筛选的。意味着我们可以建立四套风格及对应的模板,分别为不同的浏览者提供不同的显示效果。
二、新建模板目录
在站点根目录/template/下新建模板目录,并将默认模板目录(default)中的discuz_style_default.xml文件拷贝到新建的目录中,修改文件名为:discuz_style_新建的目录名.xml。模板目录建议采用英文字符。以防止服务器不识别中文目录。然后用记事本打开该xml文件进行编辑,修改对应的配置项。具体修改参见官方提供的模板制作概述下图为修改好的示例:
注意:directory项中,路径要和模板文件夹所在的路径保持一致。templateid项中,具体的值修改为对应风格方案的id,(在风格方案中,点击编辑,从网址栏中可以看到具体的id。)
三、后台新建模板套系
在【界面】——【模板管理】中,新增模板名称(建议和风格名称保持一致)并指定正确的路径。参见下图:
至此,新建模板方案就大功告成了。在【工具】——【更新缓存】中更新一次缓存。前台样式就是新建的模板了。此时我们会发现前台没有任何变化,这是因为我们只是新建了模板方案,但是没有建立具体的模板文件,系统检测到没有模板文件后,自动采用了默认模板方案中的对应模板文件(在discuz模板读取规则中有叙述),故前台没有任何变化。在后续的章节中,我们将制作各个模板文件,此时前台就会发生对应的变化。
Discuz3.3精仿小米风格整站模板制作——1、新建模板方案的更多相关文章
- jQuery精仿手机上的翻牌效果菜单
代码简介: jQuery精仿手机上的翻牌效果菜单,很平滑的动画翻牌效果,每点击一下菜单,就会翻去一下,貌似很灵敏的动作.注意:如果预览时没看到效果,请刷新一下页面,让jquery载入就行了,在实际使用 ...
- DEDE整站动态化或整站静态化设置方法,织梦栏目批量静态/动态方法
跟版网建站接到一个朋友提问,100多各栏目全部要从动态变成静态,里面的文章也要静态化,如何更快捷的设置dede的静态化或者动态化呢? 直接用DEDE后台的SQL命令行工具, SQL语句: DEDE整站 ...
- [参考]wget下载整站
wget -m -e robots=off -U "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.6) Gecko/200 ...
- 高仿精仿开心网应用android源码
今天早上看到了一个不错的安卓应用源码项目,真的非常不错高仿精仿开心网应用android源码下载,希望大家能够喜欢. 原文:http://android.662p.com/thread-29 ...
- Linux系统下利用wget命令把整站下载做镜像网站
Linux系统下利用wget命令把整站下载做镜像网站 2011-05-28 18:13:01 | 1次阅读 | 评论:0 条 | itokit 在linux下完整的用wget命令整站采集网站做镜像 ...
- 完美高仿精仿京东商城手机客户端android版源码
完美高仿精仿京东商城手机客户端android版源码,是从安卓教程网那边转载过来的,这款应用源码非常不错的,也是一个非常优秀的应用源码的,希望能够帮到学习的朋友. _js_op> <igno ...
- 前端资源多个产品整站一键打包&包版本管理(一)
来新公司工作的第五个月.整站资源打包管理也提上了日程. 问题: 首先.什么是整站的打包管理呢? 我们公司的几个重要产品都在同一个webapp里面,但是,不同的开发部门独立开发不同的产品,长期以来,我们 ...
- 高仿精仿快播应用android源码下载
今天给大家在网上找到的一款高仿精仿快播应用android源码,分享给大家,希望大家功能喜欢. 说明源码更新中.... 源码即将上传 也可以到这个网站下载:download
- 通常编译亲测56Y国际象棋源代码,精仿56Y国际象棋完整的源代码下载!
今天公布亲测通常应编译56Y国际象棋源代码,精仿56Y牌源代码.喜欢的能够拿去研究.论坛资源太多.我们会把好的资源都公布出来,同一时候欢迎很多其它的程序猿增加我们! 增加我们的共同学习交流! ...
随机推荐
- HTML头标签使用-又一次定向,refresh
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 【[NOI2015]品酒大会】
可能是最傻的做法了 暴力单调栈+\(st\)表 首先看到这道题就基本知道这是个\(SA\)了,先无脑敲上\(SA\)和求\(height\)的板子 之后尝试搞一下第一问 发现第一问就是求出满足\(lc ...
- Day10 API
String类 String是不可变类:值一旦确定了,就不会更改. public static void main(String[] args) { String s1 = "hello&q ...
- Windows10中以管理员身份打开命令提示符
WIN+X+A (要关闭替换) 从任务栏启动 从开始菜单 从资源管理器 连贯即(alt+f+s+a)
- mysql安装后找不到sock文件
mysql rpm安装方式之后,启动找不到sock文件,经排查是之前安装的由mysql, 需要时yum list installed mysql 或者 rpm -qa |grep -i mysql ...
- 初识Qt文件下载
1.新建一个Qt Gui应用,项目名称为http,基类选择为QMainWindow,类名设置为MainWindow. 2.在http.pro文件中的QT += core gui后添加\ networ ...
- c++——初始化列表
多个对象构造和析构 1对象初始化列表 1)对象初始化列表出现原因 1.必须这样做: 如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,没有默认构造函数.这时要 ...
- servlet使用
一.使用IDEAL创建项目 1) 2) 3) 4) 5) 6) 7) 8) 9) 二.路径介绍: 配置文件: servlet配置文件: package ser_Test; import javax.s ...
- P1481 魔族密码
题目描述 风之子刚走进他的考场,就…… 花花:当当当当~~偶是魅力女皇——花花!!^^(华丽出场,礼炮,鲜花) 风之子:我呕……(杀死人的眼神)快说题目!否则……-_-### 花花:……咦好冷我们现在 ...
- 数据结构基础(1)--数组C语言实现--动态内存分配
数据结构基础(1)--数组C语言实现--动态内存分配 基本思想:数组是最常用的数据结构,在内存中连续存储,可以静态初始化(int a[2]={1,2}),可以动态初始化 malloc(). 难点就是数 ...