制作专题模板是 Dedecms 一个非常强大且灵活的功能,它允许你将不同栏目、不同文章的内容聚合到一个独立的页面中,常用于制作专题报道、活动汇总、产品展示等。

dedecms专题模板制作
(图片来源网络,侵删)

整个过程可以分为三个核心步骤:

  1. 创建专题: 在后台定义专题的基本信息,包括专题名称、所属栏目等。
  2. 添加专题内容: 将你想要的任何文章、图片、链接等内容添加到专题中。
  3. 制作专题模板: 创建一个独立的 .htm 模板文件,并用特定的标签调用专题内容。

下面我们一步步进行详细说明。


第一步:在后台创建专题

  1. 登录后台: 使用你的管理员账号登录 Dedecms 后台。
  2. 进入专题管理: 在左侧菜单栏中,找到 核心 -> 专题管理 -> 专题管理,点击进入。
  3. 新建专题:
    • 点击右上角的 增加专题 按钮。
    • 专题名称: 填写你的专题名称,2025年度产品发布会”。
    • 专题目录: 系统会根据专题名称自动生成一个目录名,你也可以手动修改,这个目录名将用于生成专题页面的静态文件路径,/special/2025-product/
    • 专题模板: 这是最关键的一步! 在这里选择你稍后要制作的专题模板,如果你还没做模板,可以先不选,等模板做好后再回来修改。
    • 专题描述: 填写专题的简介,有助于SEO和用户理解。
    • 专题封面: 上传一张专题的封面图片。
    • 其他选项: 如是否生成HTML、专题状态等,根据需要设置。
    • 点击 确定 保存。

一个空的专题页面已经创建好了,但还没有内容,也无法访问。


第二步:为专题添加内容

创建好专题后,你需要向其中填充内容,Dedecms 提供了非常灵活的添加方式。

dedecms专题模板制作
(图片来源网络,侵删)
  1. 进入专题维护:专题管理 列表中,找到你刚刚创建的专题,点击右侧的 维护 按钮。
  2. 的方式:
    • 添加单篇文档:
      • 点击 增加文档
      • 你可以选择从任意栏目中选择一篇文章添加进来,这是专题模板的核心优势。
      • 、选择栏目、选择文章、设置排序权重(权重越大,显示越靠前)。
      • 点击 确定
    • 从专题中选择文档:
      • 如果你的专题里已经有了一些文章,可以点击 从专题中选择文档,将其他专题里的内容复制过来。
    • 添加外部链接:
      • 点击 增加外部链接
      • 可以添加一个外部网站的链接,并设置标题和排序。
    • 添加自定义页面:
      • 点击 增加自定义页面
      • 这非常强大!你可以在这里直接编写HTML代码,插入图片、文本、视频等,创建一个完全由你自定义的专题板块。

你可以通过以上方式,为你的专题添加丰富的内容,所有添加的内容都会按照你设置的“排序”进行排列。


第三步:制作专题模板 (核心步骤)

我们来制作专题的模板文件,模板文件就是一个普通的 HTML 文件,里面嵌入了 Dedecms 的模板标签。

模板文件存放位置

专题模板文件需要存放在 /templets/default/ 目录下(如果你的网站使用了其他模板,则存放在对应的模板目录下,如 /templets/your_template_name/)。

模板文件命名规范

专题模板的命名没有严格限制,但为了清晰管理,建议使用 special_ 作为前缀,

dedecms专题模板制作
(图片来源网络,侵删)
  • special_product.htm (产品专题模板)
  • special_news.htm (新闻专题模板)

模板文件内容 (代码示例)

下面是一个完整的专题模板示例,包含了调用专题基本信息、文章列表、自定义页面等常用标签。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">{dede:field.title/} - {dede:global.cfg_webname/}</title>
    <meta name="description" content="{dede:field.description function='html2text(@me)'/}" />
    <meta name="keywords" content="{dede:field.keywords/}" />
    <link rel="stylesheet" href="/templets/default/style/css.css">
</head>
<body>
    <!-- 专题头部 -->
    <header class="special-header">
        <h1>{dede:field.title/}</h1>
        <p class="description">{dede:field.description/}</p>
        <!-- 调用专题封面图 -->
        {dede:field.coverimg runphp='yes'}
            if(@me != ''){ @me = '<img src="' . @me . '" alt="' . @me . '">'; }
            else{ @me = ''; }
        {/dede:field.coverimg}
    </header>
    <div class="main-content">
        <!-- 方式一:调用专题内的文章列表 -->
        <section class="article-list">
            <h2>相关报道</h2>
            <ul>
                {dede:arclist titlelen='40' row='10' orderby='weight'}
                <li>
                    <a href="[field:arcurl/]">[field:title/]</a>
                    <span class="date">[field:pubdate function="MyDate('Y-m-d', @me)"/]</span>
                </li>
                {/dede:arclist}
            </ul>
        </section>
        <!-- 方式二:调用专题内的自定义页面 -->
        <section class="custom-content">
            <h2>活动介绍</h2>
            {dede:pagecontent pagesize='all'}
            [field:content/]
            {/dede:pagecontent}
        </section>
        <!-- 方式三:循环调用专题内的所有内容(文章+自定义页面+外部链接) -->
        <section class="all-content">
            <h2>全部内容</h2>
            {dede:field name='body'/}  <!-- 这个标签会循环输出所有添加到专题中的内容块 -->
        </section>
    </div>
    <footer>
        <!-- 你的页脚内容 -->
    </footer>
</body>
</html>

专题模板常用标签详解

  • {dede:field.title/}: 调用专题的标题。
  • {dede:field.description/}: 调用专题的描述。
  • {dede:field.keywords/}: 调用专题的关键词。
  • {dede:field.coverimg/}: 调用专题的封面图片地址,如果需要直接显示图片,可以用 runphp 进行判断和输出,如示例代码所示。
  • {dede:arclist ...}: 在专题模板中,这个标签默认调用的是当前专题内的文章,参数和普通栏目模板中的 arclist 一样,如 row (调用数量), titlelen (标题长度), orderby (排序方式,如 pubdate 发布时间, weight 权重)。
  • {dede:pagecontent ...}: 专门用于调用专题中添加的“自定义页面”内容。
    • pagesize='all': 表示调用所有自定义页面,如果指定数字,则调用指定数量的页面。
  • {dede:field name='body'/}: 这是一个万能标签,它会按照你在后台添加专题内容时的顺序,循环输出所有内容(包括文章、自定义页面、外部链接等),输出时,系统会自动为每种内容块添加特定的class或id,方便你用CSS进行样式控制。

第四步:生成专题页面并访问

  1. 更新专题缓存/生成HTML:

    • 回到后台的 专题管理 列表,找到你的专题。
    • 点击 更新 按钮,在弹出的选项中,选择 生成专题HTML
    • 系统会根据你选择的专题模板和专题内容,生成一个静态的HTML页面。
  2. 访问专题页面:

    • 生成成功后,专题页面的地址通常为: http://你的域名/special/专题目录/index.html
    • 如果你的专题目录是 2025-product,那么访问地址就是: http://yourdomain.com/special/2025-product/index.html

总结与技巧

  • 模板复用: 你可以制作一个通用的专题模板(如 special_default.htm),然后在创建新专题时,如果不想特殊定制,就默认选择这个模板,提高效率。
  • CSS 样式控制:{dede:field name='body'/} 循环输出的内容中,Dedecms 会自动给不同类型的内容加上 class 属性,例如文章块可能会有 class="content",自定义页面块可能会有 class="page",善用这些class,可以让你在CSS中轻松控制不同内容的样式。
  • 静态化 vs 动态: 专题页面强烈建议生成静态HTML,这有利于SEO和网站加载速度。
  • 排错: 如果模板标签不显示内容,首先检查:
    1. 后台专题是否选择了正确的模板。
    2. 专题内是否已经添加了对应类型的内容。
    3. 模板标签的语法是否正确(如 {dede:} 是否闭合)。

通过以上步骤,你就可以轻松制作出功能丰富、样式美观的 Dedecms 专题页面了。