DedeCMS(织梦内容管理系统)本身是一个完整的网站程序,而“模板”是它的“皮肤”或“外观”。 你下载的“博客模板源码”通常不是一个可以独立运行的网站,而是一套包含了 HTML、CSS、JavaScript 以及特定 DedeCMS 标签的文件,需要安装在已经搭建好的 DedeCMS 系统上才能使用。

(图片来源网络,侵删)
下面我将从模板的结构、核心文件、安装方法、以及如何二次开发这几个方面,为你详细拆解 Dede 博客模板的源码。
DedeCMS 博客模板的核心结构
一个典型的 DedeCMS 博客模板,其目录结构通常如下:
my_blog_template/ <-- 模板文件夹名(可自定义)
├── index.html <-- 首页模板
├── list_*.html <-- 列表页模板(如文章列表、图片列表等)
├── article_article.html <-- 文章内容页模板
├── search.html <-- 搜索结果页模板
├── tags.html <!-- 标签聚合页模板 -->
├── user/ <!-- 用户中心相关模板 -->
│ ├── index.html
│ ├── space.html
│ └── ...
├── images/ <-- 模块所用到的图片资源
├── style/ <-- CSS 样式文件
│ └── default.css <-- 主样式表
├── js/ <-- JavaScript 脚本文件
│ └── common.js <-- 通用脚本
├── plus/ <-- DedeCMS 特殊模块页面(通常不修改)
│ └── ...
└── templets/ <-- DedeCMS 系统目录,存放全局和频道封面模板
├── default/ <-- 全局模板(如头部、底部)
│ ├── head.html <-- 网站头部
│ └── foot.html <-- 网站底部
└── ...
关键点:
templets/default/目录:这个目录是 DedeCMS 系统自带的,存放所有频道和全局的默认模板,很多第三方模板会覆盖或修改这里的文件,以实现统一的头部和底部。- 模板文件命名:
list_*.html中的 代表栏目ID。list_1.htmlID 为 1 的栏目的列表页模板。article_article.html是固定的文章内容页模板名。
模板核心文件详解(源码构成)
模板的灵魂在于其 HTML 文件中的 DedeCMS 模板标签,这些标签会被 DedeCMS 引擎解析,并替换成从数据库中动态获取的实际内容。

(图片来源网络,侵删)
首页模板 (index.html)
这是博客的门面,通常包含以下部分:
<!DOCTYPE html>
<html>
<head>{dede:global.cfg_webname/}</title> <!-- 网站标题 -->
<meta name="description" content="{dede:global.cfg_description/}" /> <!-- 网站描述 -->
<link rel="stylesheet" href="{dede:global.cfg_templets_skin/}/style/default.css"> <!-- 引入CSS -->
</head>
<body>
<!-- 引用头部模板 -->
{dede:include filename="templets/default/head.html"/}
<div class="main">
<!-- 左侧主要内容区 -->
<div class="content">
<!-- 调用文章列表,头条推荐 -->
{dede:arclist flag='h' typeid='' row='5' titlelen='50'}
<li>
<a href="[field:arcurl/]">[field:title/]</a> <!-- 文章链接和标题 -->
<span>[field:pubdate function="MyDate('Y-m-d', @me)"/]</span> <!-- 发布日期 -->
</li>
{/dede:arclist}
<!-- 调用普通文章列表 -->
{dede:arclist typeid='' row='10' titlelen='50'}
<h2><a href="[field:arcurl/]">[field:title/]</a></h2>
<div class="intro">[field:description function='cn_substr(@me, 100)'/]...</div> <!-- -->
<div class="info">
作者:[field:writer/] | 分类:[field:typename/] | 评论:[field:click/] | 阅读:[field:click/]
</div>
{/dede:arclist}
<!-- 分页标签 -->
{dede:pagelist listitem='index,pre,next,end' listsize='5'/}
</div>
<!-- 右侧边栏 -->
<div class="sidebar">
<!-- 调用友情链接 -->
{dede:flink type='text' row='24'/}
<!-- 调用最新评论 -->
{dede:feedback row='5' titlelen='24'}
<li>[field:username/] 评论了《[field:title/]》</li>
{/dede:feedback}
</div>
</div>
<!-- 引用底部模板 -->
{dede:include filename="templets/default/foot.html"/}
</body>
</html>
常用标签解释:
{dede:global.cfg_webname/}:调用网站全局配置中的网站名称。{dede:arclist ...}:文章列表标签,最核心的标签之一。typeid: 指定栏目ID,为空表示所有栏目。row: 显示条数。titlelen: 标题长度。flag: 属性,如h(头条),c(推荐),p(图片)。[field:arcurl/]:文章链接。[field:title/]。[field:pubdate/]:发布日期,可配合function格式化。
{dede:include filename="..."}:包含其他模板文件,用于复用头部、底部等。{dede:pagelist ...}:分页列表标签。
页模板 (article_article.html)
这个模板用于显示单篇文章的详细内容。
{dede:include filename="templets/default/head.html"/}
<div class="article-content">
<h1>{dede:field.title/}</h1> <!-- 文章标题 -->
<div class="article-info">
发布时间:{dede:field.pubdate function="MyDate('Y-m-d H:i', @me)"/} |
作者:{dede:field.writer/} |
来源:{dede:field.source/} |
点击:<script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field.aid/}&mid={dede:field.mid/}" type='text/javascript' language="javascript"></script>次
</div>
<div class="body">
{dede:field.body/} <!-- 文章正文内容 -->
</div>
<!-- 上一篇/下一篇 -->
<div class="prenext">
{dede:prenext get='pre'/} {dede:prenext get='next'/}
</div>
<!-- 文档标签 -->
<div class="tags">
标签:{dede:tag sort='hot' getall='0'}/}
</div>
<!-- 评论调用 -->
{dede:include filename="comment.html"/}
</div>
{dede:include filename="templets/default/foot.html"/}
常用标签解释:

(图片来源网络,侵删)
{dede:field.title/}:调用文章的字段值,如标题、内容等。{dede:field.body/}:调用文章的正文内容。{dede:prenext get='pre'/}:调用上一篇/下一篇文章链接。{dede:tag ...}:调用文章的标签。
如何获取和使用 Dede 博客模板源码
获取模板源码
- 官方市场:DedeCMS 官方网站有模板市场,但大多是收费的。
- 第三方模板网站:如织梦吧、模板天下等网站,提供大量免费和付费的 DedeCMS 模板,下载时通常是一个压缩包(.zip 或 .rar)。
- GitHub/Gitee:可以搜索
DedeCMS template,能找到一些开源的模板项目,可以看到完整的源码。
安装模板步骤
- 准备环境:确保你的服务器已经安装了 DedeCMS 程序,并且可以正常访问后台。
- 上传模板:
- 解压下载的模板压缩包。
- 通过 FTP 或主机控制面板,将整个模板文件夹(
my_blog_template)上传到你的 DedeCMS 网站根目录下的templets/文件夹里。
- 后台设置:
- 登录 DedeCMS 后台。
- 进入 “系统” -> “系统基本参数” -> “核心设置”。
- 找到 “模板默认目录” 选项,将其值修改为你刚刚上传的模板文件夹名(
my_blog_template)。 - 保存。
- 应用模板:
- 进入 “栏目” -> “栏目管理”。
- 点击你想要应用模板的栏目后面的 “更改” 或 “管理” 按钮。
- 在栏目设置页面,找到 “列表模板” 和 “文章模板”,从下拉菜单中选择你上传的模板文件(
index.html,article_article.html)。 - 保存即可。
二次开发与修改
理解了模板结构后,你就可以像修改普通网页一样进行二次开发了。
-
修改样式:
- 所有样式都在
templets/你的模板名/style/目录下的.css文件中。 - 修改
default.css可以改变网站的颜色、字体、布局等。
- 所有样式都在
-
修改结构:
- 直接编辑
.html模板文件,调整 HTML 结构,比如增减侧边栏模块、改变文章列表的展示方式等。
- 直接编辑
-
自定义标签:
- 如果默认标签满足不了需求,你可以通过修改 PHP 文件来自定义更复杂的标签,但这需要一定的 PHP 编程基础,你可以在
/include/extend.func.php文件中添加自定义函数,然后在模板中调用。
- 如果默认标签满足不了需求,你可以通过修改 PHP 文件来自定义更复杂的标签,但这需要一定的 PHP 编程基础,你可以在
-
注意事项:
- 备份!备份!备份! 在修改任何文件前,务必备份你的模板文件和数据库。
- 不要直接修改系统核心文件:除非你非常了解,否则尽量不要修改
/include/或/dede/目录下的核心 PHP 文件,否则可能导致系统出错。 - 保持标签完整性:修改模板时,确保
{dede:...}标签的开始和结束配对,否则会导致页面解析错误。
DedeCMS 博客模板源码的本质是一套结构化的前端文件,其核心是 HTML + CSS/JS + DedeCMS 特有标签,掌握其目录结构和常用标签的含义,你就可以轻松地安装、使用、修改和开发属于自己的 Dede 博客模板,希望这份详细的解析对你有帮助!
