在网站运营中,我们常常会遇到这样的需求:某个特定的产品展示页需要一个独一无二的布局来强调其特点,或是一个重要的活动专题页需要特殊的设计来吸引用户,再或是“关于我们”这类单页面想展现出与众不同的品牌调性。安企CMS为我们提供了灵活的方式,让我们能够为这些具有独特需求的内容,定制专属的显示模板,从而极大地提升网站的视觉表现力和用户体验。

安企CMS的模板系统借鉴了Django模板引擎的语法,以其直观、高效的特点,为内容创作者和开发者提供了极大的便利。它支持我们根据内容ID(如某个具体的文章、产品)或分类ID(如某一类文章、产品栏目)来指定不同的模板文件,让网站的每一个角落都能精准地传达信息。

自定义模板的场景与价值

为什么我们需要为特定内容定制模板呢?这通常是出于以下考虑:

  1. 突出核心内容:对于主打产品、限时活动等重要内容,通过定制专属模板可以打破常规布局,更有效地引导用户关注,促进转化。
  2. 优化用户体验:针对不同类型的内容,提供最适合其阅读和交互的模板,例如图片为主的内容使用大图布局,技术文档则侧重清晰的排版和代码高亮。
  3. 强化品牌形象:在一些核心页面,如“关于我们”、“联系我们”等单页面,定制模板能够更好地融入品牌元素,加深用户对品牌的印象。
  4. 适应营销策略:配合特定的营销活动,快速切换或上线具有营销元素的专题页面模板,提高运营效率。

安企CMS通过一套简洁的模板文件命名约定,让这一过程变得轻而易举。

定制文档(文章/产品)详情页模板

如果您希望为某一篇具体的文章或一个产品详情页应用独特的布局,可以通过在后台编辑该文档时,在“其他参数”中的“文档模板”字段进行指定。

在指定模板之前,您需要先创建这个特殊的模板文件。安企CMS约定,文档详情的自定义模板文件应放置在 /template 目录下的对应模型文件夹中。例如,对于文章模型,通常是 archive 文件夹;对于产品模型,则是 product 文件夹。文件命名格式为 {模型table}/{文档ID}.html

举例来说,如果您的某个文章文档ID是 123,且其模型表名为 archive,您可以创建一个名为 archive/detail-123.html 的模板文件。又或者,如果您有一个产品ID为 456 的产品,模型表名为 product,您可以创建 product/detail-456.html

在这些定制的模板文件中,您依然可以像在通用模板中一样,使用 archiveDetail 标签或直接通过 {{archive.Title}} 等方式来调用当前文档的各种详细信息和自定义字段,以构建出您期望的独特展示效果。

定制分类(栏目)列表页模板

对于某个特定的分类(如“新闻动态”栏目下的列表页,或“最新产品”分类下的产品列表),您可能希望它与其他分类拥有不同的列表展示样式。安企CMS允许您为每一个分类定制其专属的列表模板。

同样地,您需要在 /template 目录下的对应模型文件夹中创建模板文件。分类列表页的命名格式为 {模型table}/list-{分类ID}.html

例如,如果有一个文章分类ID是 10,其模型表名为 archive,您可以创建 archive/list-10.html 文件。如果有一个产品分类ID为 20,模型表名为 product,则可以创建 product/list-20.html

创建好模板文件后,登录安企CMS后台,进入“内容管理”下的“文档分类”页面,编辑相应的分类。在“其他参数”中找到“分类模板”字段,填写您创建的模板文件名(例如 list-10.html)。值得一提的是,这里还有一个“是否应用到子分类”的选项,如果您勾选了它,该分类下的所有子分类将自动继承此自定义模板,省去了为每个子分类重复设置的麻烦。

在这些自定义的分类列表模板中,您可以运用 categoryDetail 标签获取分类本身的详细信息,并结合 archiveList 标签来展示该分类下的文档列表,实现各种复杂的布局和功能。

定制单页面模板

安企CMS的单页面功能非常适合创建“关于我们”、“联系我们”、“服务条款”等独立页面。如果您希望某个单页面拥有完全独立的视觉设计,同样可以为其定制专属模板。

单页面的模板文件通常位于 /template/page/ 目录下。文件命名格式可以是 page/{单页面ID}.html,或者更灵活地,使用 page/{自定义URL别名}.html。例如,如果您有一个单页面ID为 1,可以创建 page/1.html。如果您的“关于我们”页面在后台设置了自定义URL别名为 about_us,那么您可以创建 page/about_us.html

在后台编辑单页面时,在“单页面模板”字段中填入您创建的模板文件名(如 about_us.html),系统便会在访问该页面时加载您指定的模板。在模板内部,您可以利用 pageDetail 标签来获取单页面的标题、内容、图片等所有信息。

模板文件的存放与基础结构

所有定制的模板文件都应存放在网站根目录的 /template 文件夹中。如果您启用了移动端适配模式,并需要为移动端定制模板,则应将移动端模板文件放在 mobile 子目录中,其内部结构与PC端模板保持一致。

所有模板文件都应使用 .html 作为后缀名,并统一采用 UTF-8 编码,以避免出现乱码问题。安企CMS的模板系统基于Django风格,这意味着您可以在模板中灵活运用变量({{变量}})、条件判断({% if ... %})、循环({% for ... %})以及各种内置的标签和过滤器,来构建功能丰富的页面。

定制模板的实战技巧

在进行模板定制时,除了上述创建专属模板文件的方式外,还有一些实用的技巧可以帮助您更高效地工作:

  • 灵活运用条件判断:对于一些只需细微调整的页面,不一定非要创建全新的模板文件。您可以在通用的 detail.htmllist.html 模板中,利用 `{% if