- 使用DedeCMS自带的
{dede:arclist}:这是最灵活、最常用的方法,可以完全自定义地图的样式和内容。 - 使用DedeCMS自带的
{dede:global name='maplist'/}:这是系统内置的简单标签,直接调用,但样式和功能有限。
下面我将详细介绍这两种方法,并给出最常用和推荐的方案。

使用 {dede:arclist} 标签(推荐)
这种方法可以让你完全控制地图的输出,比如只调用特定栏目、显示文章摘要、按时间排序等,它通常用在自定义的地图模板文件中(templets/default/sitemap.htm)。
基础调用代码
这是最简单的调用,会列出所有栏目的最新文章。
{dede:arclist titlelen='60' row='200'}
<a href="[field:arcurl/]">[field:title/]</a>
<br>
{/dede:arclist}
{dede:arulist}: 调用文章列表的起始标签,len='60'`: 标题长度,限制为60个字符。row='200': 调用文章的数量,200条,你需要根据你的网站文章总数来设置一个足够大的数字。[field:arcurl/]: 文章的完整链接。[field:title/]: 文章的标题。<br>: 换行,让每篇文章标题独占一行。
进阶与常用属性组合(强烈推荐)
一个标准的网站地图不仅要有文章链接,最好还能按栏目分类,并显示更新时间,我们可以通过组合属性来实现。
示例:按栏目分类显示文章,并显示更新时间

<h2>网站地图 - {dede:field name='typename'/}</h2>
<ul>
{dede:channelartlist typeid='0' row='8'}
<li>
<h3><a href="[field:typeurl/]">[field:typename/]</a></h3>
<ul>
{dede:arclist titlelen='50' row='100' orderby='pubdate' orderway='desc'}
<li><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a> <span class="update-time">([field:pubdate function="MyDate('Y-m-d', @me)"/])</span></li>
{/dede:arclist}
</ul>
</li>
{/dede:channelartlist}
</ul>
代码详解:
-
{dede:channelartlist typeid='0' row='8'}:typeid='0': 调用所有顶级栏目,如果你想只调用特定栏目,可以改成typeid='1,2,3'。row='8': 调用顶级栏目的数量。- 这个标签会循环输出每个顶级栏目。
-
[field:typeurl/]和[field:typename/]:- 在
channelartlist内部,这两个标签分别代表当前栏目的URL和名称。
- 在
-
{dede:arclist ...}:- 这个标签被嵌套在
channelartlist内部,所以它会为每一个顶级栏目都调用一次该栏目的文章列表。 orderby='pubdate': 按发布时间排序。orderway='desc': 降序排列,最新的文章在最前面。
- 这个标签被嵌套在
-
[field:pubdate function="MyDate('Y-m-d', @me)"/]:- 这是调用文章发布时间的关键。
function="MyDate('Y-m-d', @me)"是一个自定义函数,用于将数据库中的时间戳格式化为年-月-日的格式,这样更清晰。
- 这是调用文章发布时间的关键。
如何使用这个进阶模板
-
创建模板文件: 在你的模板目录(
/templets/你的模板名称/)下,新建一个文件,命名为sitemap.htm。 -
粘贴代码: 将上面“进阶与常用属性组合”的代码粘贴到
sitemap.htm文件中。 -
生成网站地图: 登录你的DedeCMS后台。
- 进入 [生成] -> [更新主页HTML]。
- 在右侧的“选择主页模板”中,选择你刚刚创建的
sitemap.htm。 - 在“主页HTML保存路径”中,输入你的网站地图文件名,
sitemap.html。 - 点击 “生成主页” 按钮。
-
访问地图: 生成成功后,你就可以通过
你的域名/sitemap.html访问这个自定义的网站地图了。
使用 {dede:global name='maplist'/}
这是系统自带的一个简单标签,无需创建新模板,直接在首页模板(如 index.htm)的合适位置调用即可。
调用方法
在你希望显示网站地图的位置,例如页脚,直接插入以下代码:
{dede:global name='maplist'/}
输出效果
这个标签会输出一个类似下面这样的HTML结构,样式和内容都是固定的,无法自定义:
<a href='/'><b>首页</b></a><br>
<a href='/plus/list.php?tid=1'>栏目一</a><br>
<a href='/plus/list.php?tid=2'>栏目二</a><br>
<a href='/a/1.html'>文章标题一</a><br>
<a href='/a/2.html'>文章标题二</a><br>
...
优缺点
- 优点:
- 极其简单,一行代码搞定。
- 无需额外创建模板和手动生成。
- 缺点:
- 样式固定:无法控制HTML结构,很难融入网站的设计风格。
- 功能有限:不能按栏目分类,不能控制显示数量和时间。
- 性能问题:如果网站文章非常多,一次性调用可能会影响页面加载速度。
总结与建议
特性
{dede:arclist} (方法一)
{dede:global name='maplist'} (方法二)
灵活性
极高,完全自定义HTML和样式
极低,样式和内容固定
功能
强大,可分类、排序、控制数量、显示时间等
简单,只能显示链接
使用难度
中等,需要了解标签属性和模板制作
非常简单,一行代码
适用场景
所有对SEO和用户体验有要求的网站
仅用于测试或非常简单的个人博客
最终建议:
强烈推荐使用方法一 ({dede:arclist}),虽然步骤稍多,但它能创建一个结构清晰、美观、对搜索引擎友好的网站地图,这对于网站的SEO(搜索引擎优化)至关重要,花一点时间自定义一个模板,长期来看是非常值得的。
这是系统自带的一个简单标签,无需创建新模板,直接在首页模板(如 index.htm)的合适位置调用即可。
调用方法
在你希望显示网站地图的位置,例如页脚,直接插入以下代码:
{dede:global name='maplist'/}
输出效果
这个标签会输出一个类似下面这样的HTML结构,样式和内容都是固定的,无法自定义:
<a href='/'><b>首页</b></a><br> <a href='/plus/list.php?tid=1'>栏目一</a><br> <a href='/plus/list.php?tid=2'>栏目二</a><br> <a href='/a/1.html'>文章标题一</a><br> <a href='/a/2.html'>文章标题二</a><br> ...
优缺点
- 优点:
- 极其简单,一行代码搞定。
- 无需额外创建模板和手动生成。
- 缺点:
- 样式固定:无法控制HTML结构,很难融入网站的设计风格。
- 功能有限:不能按栏目分类,不能控制显示数量和时间。
- 性能问题:如果网站文章非常多,一次性调用可能会影响页面加载速度。
总结与建议
| 特性 | {dede:arclist} (方法一) |
{dede:global name='maplist'} (方法二) |
|---|---|---|
| 灵活性 | 极高,完全自定义HTML和样式 | 极低,样式和内容固定 |
| 功能 | 强大,可分类、排序、控制数量、显示时间等 | 简单,只能显示链接 |
| 使用难度 | 中等,需要了解标签属性和模板制作 | 非常简单,一行代码 |
| 适用场景 | 所有对SEO和用户体验有要求的网站 | 仅用于测试或非常简单的个人博客 |
最终建议:
强烈推荐使用方法一 ({dede:arclist}),虽然步骤稍多,但它能创建一个结构清晰、美观、对搜索引擎友好的网站地图,这对于网站的SEO(搜索引擎优化)至关重要,花一点时间自定义一个模板,长期来看是非常值得的。
