动易CMS动态页模板配置全教程

动易CMS的强大之处在于其灵活的模板系统,允许开发者通过修改模板文件来自由定义网站前台页面的显示效果,本教程将重点讲解动态页模板的配置。

动易cms动态页模板配置教程
(图片来源网络,侵删)

核心概念:什么是动态页模板?

在动易CMS中,页面分为两种主要类型:

  1. 静态页:通过“生成HTML”功能,将数据库中的内容直接生成成 .html 文件,访问速度快,但不利于SEO(搜索引擎优化),因为内容无法实时更新。
  2. 动态页是通过服务器端的PHP代码从数据库中实时读取并渲染后返回给用户的,页面后缀通常是 .php.aspx(取决于你的CMS版本)。本教程主要针对PHP版本

动态页模板的优势:

  • SEO友好:URL可以伪静态,内容实时更新,利于搜索引擎抓取。
  • 功能强大:可以方便地调用会员系统、评论系统、表单提交等各种后台功能。
  • 内容即时:用户看到的是最新的内容,无需等待生成。

准备工作:你需要了解的文件结构

在开始之前,你需要熟悉动易CMS的文件结构,动态页模板主要位于以下目录:

  • /templates/:这是所有模板的根目录,每个完整的网站模板都会在这里创建一个以模板名命名的文件夹。
    • /templates/Default/ (默认模板)
  • /templates/[模板名]/:你的具体模板文件夹。
    • style/:存放CSS样式文件、JS脚本、图片等。
    • images/:存放模板用到的图片。
    • inc/:存放公共模板片段文件(如头部 header.htm、底部 footer.htm 等)。
    • [栏目ID]/存放各个栏目的动态页模板文件
    • special/:存放专题页模板。
    • list_*.htm:列表页模板(list_1.htm 是栏目ID为1的列表页模板)。
    • index.htm:首页模板(虽然首页也可以是动态的,但通常我们指的动态页是栏目页和内容页)。

动态页模板的“三驾马车”:标签、变量与循环

动易CMS的模板语法非常简单,核心就是使用 {PE.Label.xxx} 格式的来调用数据。

动易cms动态页模板配置教程
(图片来源网络,侵删)
  1. 变量

    • 用于显示单个数据,如标题、内容、发布时间等。
    • {$Title} 显示文章标题,{$Content} 显示文章内容。
  2. 循环

    • 用于重复显示一组数据,如文章列表、图片列表等。
    • 基本结构:
      {PE.Label.List ...}
      <li>
          <a href="{$Link}">{$Title}</a>
          <span>{$InputTime}</span>
      </li>
      {PE.Label.List .../}
    • 部分是标签的属性,用于控制查询条件。
    • 是动易CMS的“指令”,用来获取数据、执行特定功能。
    • 最常用的标签是 PE.Label,它包含了几乎所有内容调用功能。

实战演练:配置一个文章列表页

假设我们要为“新闻中心”栏目配置一个动态列表页。

步骤1:在后台创建栏目

动易cms动态页模板配置教程
(图片来源网络,侵删)
  1. 登录动易CMS后台。
  2. 进入 内容管理 -> 栏目管理
  3. 新建一个栏目,新闻中心”。
  4. 在创建栏目时,选择“动态页”。
  5. 记录下这个栏目的ID,假设为 5

步骤2:创建对应的模板文件

  1. 通过FTP或文件管理器,进入你的模板目录,/templates/Default/
  2. 创建一个名为 5 的新文件夹(文件夹名必须等于栏目ID)。
  3. 5 文件夹内,创建一个名为 list_5.htm 的文件(文件名格式为 list_[栏目ID].htm)。

步骤3:编写模板代码

打开 list_5.htm 文件,输入以下代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">{PE.Label id="栏目名称" nodeid="5"} - {PE.SiteConfig.WebTitle}</title>
    <link rel="stylesheet" type="text/css" href="{PE.SiteConfig.TemplateDir}/style/style.css" />
</head>
<body>
    <!-- 引入公共头部 -->
    {PE.Label id="通用头部模板" nodeid="0"}
    <div class="main">
        <div class="news-list">
            <h2>{PE.Label id="栏目名称" nodeid="5}</h2>
            <!-- 循环调用栏目ID为5下的所有文章 -->
            {PE.Label id="内容列表" nodeid="5" titlelen="50" sumuplen="100" isdot="1"}
                <div class="news-item">
                    <h3><a href="{$Link}">{$Title}</a></h3>
                    <p class="summary">{$SumUp}</p>
                    <p class="info"><span class="date">{$InputTime}</span> <span class="source">来源:{$Source}</span></p>
                </div>
            {PE.Label id="内容列表" nodeid="5"/}
            <!-- 如果没有内容,显示提示 -->
            {PE.Label id="无内容提示" nodeid="5" titlename="暂无新闻资讯"/}
        </div>
    </div>
    <!-- 引入公共底部 -->
    {PE.Label id="通用底部模板" nodeid="0" isindex="1"}
</body>
</html>

代码解析:

  • {PE.Label id="栏目名称" nodeid="5"}:调用栏目ID为5的栏目名称。
  • {PE.Label id="内容列表" nodeid="5" ...}:这是核心标签,用于获取文章列表。
    • nodeid="5":指定要查询的栏目ID。
    • titlelen="50"最多显示50个字符。
    • sumuplen="100":摘要最多显示100个字符。
    • isdot="1":摘要超出长度时用“...”代替。
  • {$Link}, {$Title}, {$SumUp}, {$InputTime}:这些都是循环体内的变量,分别代表文章的链接、标题、摘要和发布时间。
  • {PE.Label id="无内容提示" ...}:当该栏目下没有文章时,显示指定的提示文字。
  • {PE.Label id="通用头部模板" ...}{PE.Label id="通用底部模板" ...}:这是调用公共模板文件的最佳实践,你需要在后台的 模板管理 -> 标签管理 中设置好这些标签,指向你 inc 文件夹里的 header.htmfooter.htm

步骤4:设置栏目并更新缓存

  1. 回到后台 栏目管理,找到你刚才创建的“新闻中心”栏目。
  2. 点击“修改”,在栏目设置中,确保“栏目模板”已经正确指向了我们刚刚创建的 list_5.htm
  3. 点击“保存”。
  4. 系统设置 -> 缓存管理,点击“更新所有缓存”,这一步至关重要,让新的模板配置生效。

步骤5:测试

访问你的网站,点击“新闻中心”栏目链接,URL应该是类似 News/List_5_1.aspx 的形式(开启了伪静态的话会是 /News/List_5/1.html),你应该能看到你配置的动态列表页效果了。

配置文章内容页

页的配置与列表页类似。

  1. 创建模板文件:在模板根目录(如 /templates/Default/)下,创建一个名为 content.htm 的文件。这是所有内容页的默认模板,你也可以为特定栏目创建专属内容页模板,如 5/content.htm,这样栏目ID为5的内容页就会优先使用这个模板。

  2. 页模板代码

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>{$Title} - {PE.SiteConfig.WebTitle}</title>
        <link rel="stylesheet" type="text/css" href="{PE.SiteConfig.TemplateDir}/style/style.css" />
    </head>
    <body>
        {PE.Label id="通用头部模板" nodeid="0"}
        <div class="main">
            <div class="article-content">
                <h1>{$Title}</h1>
                <div class="article-info">
                    <span>发布时间:{$InputTime}</span> | 
                    <span>来源:{$Source}</span> | 
                    <span>作者:{$Author}</span>
                </div>
                <div class="article-body">
                    {$Content}
                </div>
                <!-- 调用相关文章 -->
                {PE.Label id="相关文章" nodeid="5" titlenum="5" titlelen="30"}
                    <div class="related">
                        <h4>相关文章</h4>
                        <ul>
                            {PE.Label id="相关文章" nodeid="5" titlenum="5" titlelen="30"}
                                <li><a href="{$Link}">{$Title}</a></li>
                            {PE.Label id="相关文章" nodeid="5"/}
                        </ul>
                    </div>
                {PE.Label id="相关文章" nodeid="5"/}
            </div>
        </div>
        {PE.Label id="通用底部模板" nodeid="0" isindex="1"}
    </body>
    </html>

常用标签参考

标签ID 说明 常用属性
栏目名称 获取指定栏目名称 nodeid (栏目ID)
栏目链接 获取指定栏目链接 nodeid (栏目ID)
当前位置 显示面包屑导航 nodeid (栏目ID), separator (分隔符)
相关文章 获取相关文章 nodeid, titlenum (显示数量), titlelen (标题长度)
评论列表 获取评论 nodeid, id (文章ID)
通用头部/底部 调用公共模板 nodeid, isindex (是否首页)

调试技巧

  1. 查看源代码:在浏览器中右键“查看网页源代码”,确认输出的HTML是否是你期望的格式。
  2. 检查路径:CSS、JS、图片路径错误是最常见的问题,确保所有资源路径都使用了 {PE.SiteConfig.TemplateDir} 这样的全局变量。
  3. 清空缓存:修改模板或标签后,务必更新缓存再测试。
  4. 简化模板:如果页面显示异常,可以先写一个最简单的模板(如只输出 {$Title}),逐步添加内容,定位问题所在。

通过以上步骤,你已经掌握了动易CMS动态页模板的基本配置方法,核心在于理解“后台设置栏目”“前台创建对应模板文件”之间的对应关系,并熟练运用 PE.Label 标签来调用数据,多加练习,你就能制作出功能丰富、样式精美的动态网站页面。