DedeCMS 本身就带有生成网站地图的功能,但默认是 XML 格式的,主要提交给搜索引擎使用,这里我们重点讲解如何生成 HTML 格式的网站地图,这个文件主要是给访客看的,方便他们快速浏览整个网站的结构。

(图片来源网络,侵删)
我将提供两种主流方法:
- 使用 DedeCMS 自带功能生成(推荐,最简单)
- 手动创建并调用 DedeCMS 标签(更灵活,适合高级用户)
使用 DedeCMS 自带功能生成(推荐)
这是最简单、最直接的方法,利用 DedeCMS 后台的“HTML地图”功能。
步骤 1:检查并开启“自动生成HTML”选项
在生成任何 HTML 文件之前,请确保您的 DedeCMS 后台已经开启了此功能。
- 登录您的 DedeCMS 后台。
- 进入 “系统” -> “系统基本参数”。
- 在左侧菜单中选择 “核心设置”。
- 找到 “是否使用HTML静态页面” 这一项,将其设置为 “是”。
- 点击 “保存”。
步骤 2:生成网站地图 HTML 文件
- 在 DedeCMS 后台,进入 “生成” -> “HTML地图”。
- 您会看到两个选项:
- 网站地图 (sitemap.html):这是生成给访客看的 HTML 格式地图。
- 简易地图 (simplemap.html):这是一个更简化的版本,通常只包含栏目链接。
- 在 “网站地图 (sitemap.html)” 的输入框中,设置您希望生成的文件名和路径。
- 文件名称:默认是
sitemap.html,您也可以修改为map.html或其他名称。 - 目录位置:默认是网站根目录 ,通常无需修改,地图文件会生成在
你的网站域名/sitemap.html。
- 文件名称:默认是
- 点击旁边的 “生成” 按钮。
- 系统会自动开始遍历您的所有栏目和文章,并生成
sitemap.html文件,生成成功后,系统会提示您。
步骤 3:将地图链接添加到网站页脚
为了让访客能方便地找到网站地图,最佳实践是在网站的页脚(Footer)中添加一个链接。

(图片来源网络,侵删)
-
登录您的网站 FTP 或使用主机文件管理器。
-
找到您当前模板的页脚文件,通常位于
/templets/你的模板名称/目录下,文件名可能是footer.htm。 -
用文本编辑器打开
footer.htm文件。 -
在合适的位置(关于我们”、“联系方式”等链接旁边)添加以下 HTML 代码:
<a href="/sitemap.html" title="网站地图">网站地图</a>
- 注意:如果您在步骤 2 中设置了不同的文件名或路径,请相应地修改
href属性中的链接。
- 注意:如果您在步骤 2 中设置了不同的文件名或路径,请相应地修改
-
保存
footer.htm文件并上传到服务器,网站的每个页面底部都会有一个指向您网站地图的链接。
手动创建并调用 DedeCMS 标签(更灵活)
如果您对网站地图的样式、布局有特殊要求,或者希望完全控制其内容,可以手动创建一个 HTML 文件,然后使用 DedeCMS 的模板标签来动态调用栏目和文章列表。
步骤 1:创建模板文件
- 在您的 DedeCMS 模板目录下(
/templets/你的模板名称/)新建一个 HTML 文件,命名为sitemap_custom.htm。 - 在这个文件中,编写网站地图的 HTML 结构,您可以设计成多栏、分页等任何您想要的样式。
步骤 2:使用 DedeCMS 标签调用数据
在 sitemap_custom.htm 文件中,使用 DedeCMS 的模板标签来动态生成内容。
示例代码 (sitemap_custom.htm):
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">{dede:global.cfg_webname/} - 网站地图</title>
<meta name="description" content="{dede:global.cfg_description/}" />
<link rel="stylesheet" href="/templets/你的模板名称/style/css/style.css">
</head>
<body>
<!-- 引入网站的头部文件 -->
{dede:include filename="head.htm"/}
<div class="sitemap-container">
<h1>网站地图</h1>
<p>欢迎来到 {dede:global.cfg_webname/} 的网站地图,本站主要栏目如下:</p>
<!-- 调用所有顶级栏目 -->
<div class="main-category">
{dede:channel type='top' row='100'}
<dl>
<dt><a href="[field:typelink/]">[field:typename/]</a></dt>
<!-- 调用当前顶级栏目下的所有子栏目 -->
<dd>
{dede:son typeid=''}
<a href="[field:typelink/]">[field:typename/]</a> |
{/dede:son}
</dd>
</dl>
{/dede:channel}
</div>
<hr style="margin: 30px 0;">
<!-- 调用最新文章列表(可选) -->
<h2>最新文章</h2>
<ul>
{dede:arclist titlelen='50' row='50' orderby='pubdate'}
<li><a href="[field:arcurl/]">[field:title/]</a> - [field:pubdate function="MyDate('Y-m-d', @me)"/]</li>
{/dede:arclist}
</ul>
</div>
<!-- 引入网站的页脚文件 -->
{dede:include filename="footer.htm"/}
</body>
</html>
代码解释:
{dede:channel type='top' row='100'}: 调用所有顶级栏目。type='top'表示只调用顶级栏目,row='100'表示最多调用 100 个。[field:typelink/]和[field:typename/]: 分别输出栏目的链接和名称。{dede:son typeid=''}: 这是一个特殊标签,必须放在{dede:channel}循环内部,它会自动输出当前顶级栏目的所有子栏目。typeid=''表示继承父级栏目 ID。{dede:arclist titlelen='50' row='50' orderby='pubdate'}: 调用文章列表。titlelen='50': 标题长度限制为 50 个字符。row='50': 显示 50 篇文章。orderby='pubdate': 按发布时间降序排列。
[field:arcurl/],[field:title/],[field:pubdate ... /]: 分别输出文章的链接、标题和格式化后的发布日期。
步骤 3:生成静态 HTML 文件
- 登录 DedeCMS 后台,进入 “生成” -> “一键更新网站”。
- 选择 “更新HTML” 选项卡。
- 在 “选择HTML保存目录” 中,选择您刚才创建的模板所在的目录。
- 在下面的列表中,找到您自定义的模板
sitemap_custom.htm,并勾选它。 - 点击 “开始生成”。
- 生成成功后,系统会提示您,您需要将这个文件移动到网站根目录或您指定的目录,以便通过浏览器访问。
总结与建议
| 特性 | 方法一 (自带功能) | 方法二 (手动模板) |
|---|---|---|
| 易用性 | ⭐⭐⭐⭐⭐ (非常简单) | ⭐⭐ (需要懂模板和标签) |
| 灵活性 | ⭐ (较低,样式固定) | ⭐⭐⭐⭐⭐ (完全自定义) |
| 适用人群 | 所有用户,特别是新手 | 开发者、高级用户、有特殊需求的站长 |
给您的建议:
- 对于大多数网站,直接使用 方法一 就完全足够了,它快捷、稳定,并且符合搜索引擎和访客的基本需求。
- 如果您追求网站的个性化展示,或者您的网站结构非常复杂,希望地图能更好地服务于用户,方法二 是更好的选择,它能让您打造出独一无二的网站地图页面。
无论使用哪种方法,生成地图后,请务必:
- 在浏览器中访问
你的域名/sitemap.html,检查链接是否都有效。 - 将您网站的 XML 格式地图(
/sitemap.xml)提交到 Google Search Console 和百度站长平台,以便搜索引擎更好地收录。
