在使用 DedeCMS 建站时,模板变量是一个非常实用的功能,尤其是全局变量,它能帮助我们快速修改网站的通用内容,比如联系方式、版权信息、导航链接等。掌握它的用法,可以大大提升建站效率。
什么是模板变量
模板变量其实就是一组可以在多个页面中重复调用的内容块。其中,全局变量是系统预设或用户自定义的一类变量,通常用于存放全站通用的信息。通过后台的“模板”→“全局变量管理”,我们可以添加、编辑这些变量。
例如,你可以设置一个名为cfg_phone的变量,用来保存网站客服电话,这样在多个页面中只需要调用这个变量即可显示电话号码,而不需要每次手动输入。
怎么添加修改变量
添加或修改全局变量的操作很直接:
- 登录DedeCMS后台;
- 点击顶部菜单中的“模板”;
- 选择“全局变量管理”;
- 在列表下方点击“添加新变量”或者选择已有变量进行编辑。
填写变量名称时建议以cfg_开头(这是DedeCMS默认命名规范),比如cfg_company_name。然后填写变量值,可以是文字、HTML代码甚至是图片路径。保存后就可以在整个站点的模板中使用了。
需要注意的是,如果你不是系统管理员,请确认自己有操作权限。另外,修改全局变量后不会自动更新所有页面,可能需要重新生成相关页面才会生效。
如何调用全局变量
在模板文件中调用全局变量的语法非常简单:
{dede:global.cfg_变量名/}
比如你添加了一个变量叫cfg_copyright,那么在模板底部调用它的方式就是:
<p>{dede:global.cfg_copyright/}</p>
这个写法适用于.htm格式的模板文件,比如首页模板、栏目页模板等。也可以在文章内容中使用这样的标签,前提是开启了“启用模板标签解析”的选项。
实用哪些场景
最常用的几个场景包括:
- 统一网站联系方式:如电话、邮箱、地址,方便后续统一更换。
- 动态SEO信息:比如首页关键词、描述等内容,可以通过变量统一管理。
- 多语言切换基础配置:虽然DedeCMS不自带多语言功能,但可以用变量来区分不同语言版本的文案。
- 临时公告栏:比如节日放假通知,只需要改一次变量就能全站显示。
使用例子
以下是一个简单的DEDECMS模板示例,展示如何使用全局变量:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{dede:global name='cfg_webname' /} - 首页</title>
<link rel="stylesheet" href="{dede:global name='cfg_templets_skin' /}/css/style.css">
</head>
<body>
<header>
<h1>{dede:global name='cfg_webname' /}</h1>
<nav>
<a href="{dede:global name='cfg_basehost' /}">首页</a>
<a href="{dede:global name='cfg_basehost' /}/about.html">关于我们</a>
</nav>
</header>
<main>
<p>欢迎访问{dede:global name='cfg_webname' /}!当前时间是:{dede:php}echo date('Y-m-d H:i:s', time());{/dede:php}</p>
</main>
<footer>
<p>版权所有:{dede:global name='cfg_webname' /} - {dede:global name='cfg_basehost' /}</p>
</footer>
</body>
</html>
在这个示例中:
{dede:global name='cfg_webname' /}
用于显示网站名称。{dede:global name='cfg_basehost' /}
用于显示网站域名。{dede:global name='cfg_templets_skin' /}
用于获取模板路径,加载CSS文件。{dede:php}...{/dede:php}
用于在模板中嵌入PHP代码,显示当前时间。
注意事项
- 变量名称的正确性:确保使用的全局变量名称是DEDECMS系统中定义的,否则无法正确调用。
- 模板标签的嵌套:在使用全局变量时,注意不要与其他模板标签冲突或嵌套错误。
- 安全性:在使用全局变量时,尤其是涉及用户输入或动态数据时,要注意防止XSS攻击等安全问题。
本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!