第二十七章 主题目录与文件分工
主题就是一个目录:model 下七个目录各放什么、栏目怎么绑模板、改一处会影响哪里,以及新建主题的四个规则。
主题就是一个目录
前台长什么样,全部由 theme/ 下的一个目录决定。本站当前用的是 theme/576so/,目录名写在根目录 andvar.asp 的 theme_root 里。换主题不是回到后台点一下,而是把 theme_root 改成另一个目录名——这件事放到第三十五章讲。
| 文件 / 目录 | 职责 |
|---|---|
config.xml | 主题说明:名称、适用终端(响应式)、语言、网址、日期、缩略图名 |
index1.html | 首页模板。文件名里的 1 是语言编号 |
head1.html | 页头:LOGO、主导航、城市切换、搜索框 |
foot1.html | 页脚:联系方式、服务地区、友情链接、咨询弹窗 |
seo/head.html | 所有页面共用的 head 内容:meta、预加载、统计脚本 |
css/ju7.css | 全站唯一的主样式表 |
js/ | ju7.js 公共脚本、banner-count.js 首页轮播、floatbar.js 浮动工具条、leadform.js 咨询弹窗 |
images/ | 主题图片;images/docs/ 是本手册的插图 |
model/ | 各类页面模板,见下一节 |
576so.webp | 主题缩略图,「模板管理」里显示的那张 |
文件名里的数字就是语言编号。程序取的是 head[langid].html、index[langid].html、foot[langid].html,所以只有一个语言时它们叫 head1、index1、foot1。新增语言要补齐这三个文件,缺一个该语言的前台就会 500。
model 下七个目录
| 目录 | 管什么 | 示例文件 |
|---|---|---|
list/ | 栏目列表页 | WZ1(网站建设)、FW1(服务卡)、ZX1(资讯)、Ju7CMS1(本手册) |
show/ | 内容详情页 | WZ1、AL1(案例)、ZX1、Ju7CMS1(本手册章节) |
page/ | 单页(关于我们、服务保障等) | GY1、BZ1、FW1 |
diy/ | 自定义聚合页 | AL1、ZX1、QC1 |
search/ | 站内搜索结果页 | 1.html |
404/ | 找不到页面 | 1.html |
password/ | 栏目密码页 | 1.html |
search/、404/、password/ 三个目录只有一个文件,全站共用,不跟着栏目走。前面的业务目录里,一个文件往往被多个栏目共用,改一处会同时影响这些栏目。
栏目怎么绑到模板
每个栏目有两个模板字段:列表模板与内容模板,存的是相对 theme/主题名/ 的路径。从本站的真实配置里挑几行看就明白:
| 栏目 | 列表模板 | 内容模板 |
|---|---|---|
| 网站建设 | model/list/WZ1.html | model/show/WZ1.html |
| 服务类栏目(企业官网、管理系统等) | model/list/FW1.html | model/show/ZX1.html |
| 案例类栏目 | model/list/AL1.html | model/show/AL1.html |
| 单页(关于我们) | model/page/GY1.html | 空 |
| 本手册各组 | model/list/Ju7CMS1.html | model/show/Ju7CMS1.html |
模板字段为空时,程序会退回 model/list/1.html 与 model/show/1.html。所以「页面能打开但样子不对」的第一嫌疑是栏目上绑错或没绑模板,不是模板文件坏了。
改一处,影响哪里
| 要改的东西 | 改哪个文件 | 影响范围 |
|---|---|---|
| 页头导航、LOGO、搜索框 | head1.html | 全站 |
| 页脚、咨询弹窗 | foot1.html | 全站 |
| 颜色、字号、间距、手机版断点 | css/ju7.css | 全站 |
| 某类栏目的列表排版 | model/list/对应文件 | 绑了这个模板的所有栏目 |
| 详情页正文区、上下篇 | model/show/对应文件 | 绑了这个模板的所有内容 |
| 首页某一屏 | index1.html | 只有首页 |
| 全站 meta、统计代码 | seo/head.html | 全站 |
四个必须遵守的规则
- 样式写进 CSS,不要写在模板里。模板里的内联
style会被主样式表覆盖,写了也不生效,还会让下次改版找不到出处。 - 改完 CSS 或 JS 要同时改版本号。主样式表是按
?v=版本引用的,版本号不变,访客浏览器会一直用旧文件。 - 改模板要清
cache/theme/。模板是编译后执行的,不清缓存改十遍也看不到。 - 改前先备份。把要改的文件复制到站点外,改完立刻打开前台对应页面看一眼。
「功能 → 模板管理」可以直接编辑这些文件,也可以预览。它是前台整站的源码,改错一行可能整页 500 或整页空白,而且不会在后台提示。生产站上编辑前,先把文件下载一份。
新建一个主题
- 复制
theme/576so/为theme/新名字/。 - 改
config.xml里的名称与缩略图。 - 改根目录
andvar.asp的theme_root,指向新目录。 - 清
cache/theme/,逐个栏目看一遍。 - 旧主题不要立刻删,留到新主题确认无误。
接下来怎么读
- 模板里那些花括号是什么:看第二十八章。
- 列表页与详情页的具体写法:第二十九章、第三十章。
- 换主题、开手机版的注意事项:第三十五章。
微信扫码聊需求