全局函数调用
全局函数可以在 PHP 代码中直接使用,也可以在某些特定场景下的模板文件(如 index.php)中直接调用,这些函数通常以

(图片来源网络,侵删)
站点基本信息
这些是最常用、最核心的站点变量。
| 函数名 | 作用 | 示例 |
|---|---|---|
GetSiteUrl($siteid=1) |
获取指定站点的根网址 | {dede:global name='cfg_basehost'/} (更推荐) |
cfg_webname |
站点名称 | echo $cfg_webname; |
cfg_webname |
站点名称 | {dede:global name='cfg_webname'/} |
cfg_weburl |
站点根目录网址 | echo $cfg_weburl; |
cfg_weburl |
站点根目录网址 | {dede:global name='cfg_weburl'/} |
cfg_powerby |
站点版权信息 | echo $cfg_powerby; |
cfg_copyright |
站点版权信息 | {dede:global name='cfg_copyright'/} |
cfg_adminemail |
管理员邮箱 | echo $cfg_adminemail; |
cfg_keywords |
站点关键词 | {dede:global name='cfg_keywords'/} |
cfg_description |
站点描述 | {dede:global name='cfg_description'/} |
示例:
在 index.php 文件中,可以这样调用:
echo "<title>".$cfg_webname."</title>"; echo "<meta name='keywords' content='".$cfg_keywords."'>"; echo "<meta name='description' content='".$cfg_description."'>";
模板标签调用
这是在 DedeCMS 模板文件(.htm)中调用变量的标准方式,语法为 {dede:标签名 属性='值'}。
全局变量标签
使用 {dede:global/} 标签来调用在后台“系统” -> “系统基本参数”中设置的全局变量。

(图片来源网络,侵删)
| 标签属性 | 作用 | 示例 |
|---|---|---|
name |
指定要获取的变量名称 | {dede:global name='cfg_webname'/} |
function |
对变量进行函数处理 | {dede:global name='cfg_webname' function='substr(@me,0,10)'/} (截取前10个字符) |
常用全局变量列表:
{dede:global name='cfg_webname'/}- 站点名称{dede:global name='cfg_weburl'/}- 站点网址{dede:global name='cfg_basehost'/}- 站点域名 (非常重要,推荐使用){dede:global name='cfg_powerby'/}- 版权信息{dede:global name='cfg_icp'/}- ICP备案号{dede:global name='cfg_analyst'/}- 站统代码
示例: 在 head.htm 模板文件中
<meta name="keywords" content="{dede:global name='cfg_keywords'/}, {dede:field name='keywords'/}">
<meta name="description" content="{dede:global name='cfg_description'/}, {dede:field name='description'/}">
字段标签
字段标签用于调用当前文档(文章、栏目等)的具体字段,通常用在列表页(list_*.htm页(article_*.htm)。
| 标签名 | 作用 | 适用场景 |
|---|---|---|
{dede:field.title/} |
调用文章/栏目标题 | 内容页、列表页 |
{dede:field.seotitle/} |
调用文章/栏目自定义标题(SEO标题) | 内容页、列表页 |
{dede:field.keywords/} |
调用文章关键词 | 内容页、列表页 |
{dede:field.description/} |
调用文章描述 | 内容页、列表页 |
{dede:field.pubdate function='strftime("%Y-%m-%d",@me)'/} |
调用文章发布日期,并格式化 | 内容页、列表页 |
{dede:field.source/} |
调用文章来源 | 内容页、列表页 |
{dede:field.writer/} |
调用文章作者 | 内容页、列表页 |
{dede:field.content/} |
调用文章正文内容 | 页 |
{dede:field.id/} |
调用文章ID | 内容页、列表页 |
示例: 在 article_article.htm (内容页) 模板中

(图片来源网络,侵删)
<h1>{dede:field.title/}</h1>
<div class="info">
发布时间:{dede:field.pubdate function='strftime("%Y-%m-%d %H:%M:%S",@me)'/}
作者:{dede:field.writer/}
来源:{dede:field.source/}
</div>
<div class="content">
{dede:field.content/}
</div>
环境变量标签
{dede:global/} 的一个特殊用法是调用 PHP 中的 $_SERVER 等超全局变量。
| 标签属性 | 作用 | 示例 |
|---|---|---|
name |
指定 PHP 超全局变量名,格式为 $_SERVER[REQUEST_URI] |
{dede:global name='$_SERVER[REQUEST_URI]'/} |
示例:
- 获取当前页面的完整URL:
{dede:global name='cfg_basehost'/}{dede:global name='$_SERVER[REQUEST_URI]'/} - 获取当前页面的文件名:
{dede:global name='PHP_SELF'/}
列表页变量标签
这些标签专门用于列表模板(list_*.htm)。
| 标签名 | 作用 |
|---|---|
{dede:list pagesize='10'/} |
开始一个列表循环,pagesize 表示每页显示条数。 |
[field:title/] |
在 {dede:list} 循环内部,调用当前文章的标题。 |
[field:arcurl/] |
调用当前文章的链接地址。 |
[field:pubdate function='strftime("%Y-%m-%d",@me)'/] |
调用并格式化当前文章的发布日期。 |
[field:source/] |
调用当前文章的来源。 |
[field:writer/] |
调用当前文章的作者。 |
{dede:pagelist listsize='4'/} |
调用分页条。 |
示例: 在 list_article.htm (文章列表页) 模板中
<ul class="list">
{dede:list pagesize='20'}
<li>
<a href="[field:arcurl/]">[field:title/]</a>
<span class="date">([field:pubdate function='strftime("%Y-%m-%d",@me)'/])</span>
</li>
{/dede:list}
</ul>
<div class="page">
{dede:pagelist listsize='4'/}
</div>
常用变量总结与最佳实践
| 变量类型 | 调用方式 | 常见用途 |
|---|---|---|
| 站点信息 | {dede:global name='cfg_XXX'/} |
<title>、<meta>、页脚版权、Logo链接等 |
| 当前文档信息 | {dede:field.name/} |
、内容、发布时间、作者等 |
| 列表循环信息 | [field:name/] |
在列表页中循环显示文章标题、链接等 |
| 系统环境 | {dede:global name='$_SERVER[XXX]'/} |
获取当前URL、服务器信息等 |
| 栏目信息 | {dede:field.name/} (在栏目页) |
调用当前栏目的名称、描述等 |
最佳实践:
- 优先使用
cfg_basehost:在需要链接到网站首页时,使用{dede:global name='cfg_basehost'/}比cfg_weburl更可靠,因为它不受“站点设置”中“站点根目录”参数的影响。 - 善用
function:对日期、文本等变量进行格式化处理,可以让模板更整洁。strftime是格式化日期的利器。 - 理解作用域:
{dede:field.title/}在首页、列表页和内容页中调用的内容是不同的,在首页,它可能调用的是“站点首页”的标题;在列表页,它调用的是“当前栏目”的标题;在内容页,它才调用“当前文章”的标题,请根据模板类型选择正确的标签。 - 使用缓存:DedeCMS 的模板系统有缓存机制,修改模板后,需要到后台“生成” -> “更新HTML”或“更新缓存”,才能在网站上看到效果。
希望这份详细的总结能帮助你更好地掌握 DedeCMS 的变量调用!
