在AnQiCMS中构建网站模板,如同为网站设计一套精美的外观和实用的功能骨架。要确保您精心设计的内容能够准确无误地展现在访客面前,遵循一些基本的模板制作约定至关重要。这些约定不仅能帮助您高效地完成模板开发,更能保证网站的稳定运行和未来维护的便捷性。

一、模板文件的组织与编码规范

首先,AnQiCMS对模板文件的存放位置和命名有着明确的要求。所有的模板文件都应以.html作为文件后缀,并统一放置在/template这个根目录下。如果您需要在模板中引入样式(CSS)、脚本(JavaScript)或图片等静态资源,请将它们存放在/public/static/目录中,这样系统才能正确加载。

一个容易被忽视但极其重要的一点是文件编码。所有模板文件都必须统一采用UTF8编码。特别是对于Windows用户,在编辑保存模板文件时务必确认编码格式,否则可能导致页面出现乱码,影响用户体验。

AnQiCMS还支持多种模板类型,以适应不同的网站展示需求:包括自适应(Responsive)、代码适配(Code Adaptation)以及PC与移动端独立站点(PC+Mobile Independent Site)模式。如果您选择代码适配或PC+手机端独立模式,那么需要为移动端创建独立的模板文件,这些文件将统一存放在模板目录下的mobile子目录中。

二、模板引擎语法与变量命名规则

AnQiCMS的模板系统基于类似Django模板引擎的语法,这使得内容动态展示变得非常直观。

变量的输出采用双花括号{{变量}}的形式,例如,要显示文档的标题,您会使用{{archive.Title}}。在变量命名上,建议遵循驼峰命名法则,即每个单词的首字母大写,这有助于保持代码风格的一致性,例如archive.Idarchive.Title等。

逻辑控制标签,如条件判断和循环,则使用单花括号和百分号包裹,例如{% if 条件 %}{% for item in list %}。需要特别注意的是,这些逻辑标签通常都需要一个结束标签来明确其作用范围,例如{% endif %}{% endfor %}。正确闭合标签是避免解析错误的关键。

三、模板目录结构与自动匹配机制

一套完整的AnQiCMS模板,除了核心的HTML文件,还需要一个config.json配置文件,用于描述模板的基本信息,比如模板名称(name)、版本(version)、作者(author)以及最重要的模板类型template_type)和启用状态status)。其中,status字段至关重要,它决定了哪一套模板当前正在被系统使用,且所有模板中只能有一个status值为1。

AnQiCMS提供了两种模板文件组织模式:文件夹组织模式和扁平化模式。这两种模式各有特点,但都旨在提供清晰的结构来管理首页、模型首页、文档详情页、列表页、单页面、搜索页等核心页面。无论您选择哪种模式,系统都内置了一些默认的自定义模板名称规则,只要您按照这些规则创建了模板文件,系统就能自动识别并应用,无需在后台单独设置。

例如,对于文章详情页,系统会尝试寻找{模型table}/{文档id}.html这样的模板文件;对于列表页,则是{模型table}/list-{分类id}.html。这种灵活的命名方式也支持您为特定的分类或单页面创建独有的模板,如为“关于我们”单页面创建page/about.html,极大地提升了模板的定制能力。

四、常用标签与过滤器的正确使用

AnQiCMS内置了丰富的模板标签和过滤器,它们是构建动态内容的利器。例如,{% system %}标签用于获取网站名称、LOGO等全局系统设置;{% contact %}用于展示联系方式;{% tdk %}