织梦模板标记简介


Posted in PHP onMarch 11, 2007

在了解DedeCms的模板代码之前,了解一下织梦模板引擎的知识是非常有意义的。织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用HTML一样,使模板代码十分直观灵活,新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。

1、织梦模板引擎的代码样式有如下几种形式:
{dede:标记名称 属性='值'/}
{dede:标记名称 属性='值'}{/dede:标记名称}
{dede:标记名称 属性='值'}自定义样式模板(InnerText){/dede:标记名称}

提示:
如果使用带底层模板的标记,必须严格用{dede:标记名称 属性='值'}{/dede:标记名称} 这种格式,否则会报错。

2、织梦模板引擎内置有多个系统标记,这些系统标记在任何场合都是能直接使用的。

(1) global 标记,表示获取一个外部变量,除了数据库密码之外,能调用系统的任何配置参数,形式为:
{dede:global name='变量名称'}{/dede:global}

{dede:global name='变量名称'/}

其中变量名称不能加 $ 符号,如变量 $cfg_cmspath ,应该写成 {dede:global name='cfg_cmspath'/} 。

(2) foreach 用来输出一个数组,形式为:
{dede:foreach array='数组名称'}[field:key/] [field:value/]{/dede:foreach}

(3) include 引入一个文件,形式为:
{dede:include file='文件名称' ismake='是否为dede板块模板(yes/no)'/}
对文件的搜索路径为顺序为:绝对路径、include文件夹,CMS安装目录,CMS主模板目录

3、织梦标记允许在任何标记中使用函数对得到的值进行处理,形式为:
{dede:标记名称 属性='值' function='youfunction("参数一","参数二","@me")'/}
其中 @me 用于表示当前标记的值,其它参数由你的函数决定是否存在,例如:
{dede:field name='pubdate' function='strftime("%Y-%m-%d %H:%M:%S","@me")'/}

4、织梦标记允许有限的编程扩展。
格式为:
{dede:tagname runphp='yes'}
$aaa = @me;
@me = "123456";
{/dede:tagname} 
@me 表示这个标记本身的值,因此标记内编程是不能使用echo之类的语句的,只能把所有返回值传递给@me。
此外由于程序代码占用了底层模板InnerText的内容,因此需编程的标记只能使用默认的InnerText。

PHP 相关文章推荐
无数据库的详细域名查询程序PHP版(2)
Oct 09 PHP
杏林同学录(七)
Oct 09 PHP
用DBSQL类加快开发MySQL数据库程序的速度
Oct 09 PHP
PHP 根据IP地址控制访问的代码
Apr 22 PHP
PHP实现文件下载断点续传详解
Oct 15 PHP
php获取从html表单传递数组的方法
Mar 20 PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 PHP
PHP 断点续传实例详解
Nov 11 PHP
浅谈PHPANALYSIS提取关键字
Mar 08 PHP
php中的钩子理解及应用实例分析
Aug 30 PHP
laravel-admin select框默认选中的方法
Oct 03 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
php桌面中心(四) 数据显示
Mar 11 #PHP
php桌面中心(三) 修改数据库
Mar 11 #PHP
php桌面中心(二) 数据库写入
Mar 11 #PHP
php桌面中心(一) 创建数据库
Mar 11 #PHP
一个简单的php实现的MySQL数据浏览器
Mar 11 #PHP
php实现的MySQL通用查询程序
Mar 11 #PHP
一个自定义位数的php多用户计数器代码
Mar 11 #PHP
You might like
咖啡产品发展的三大浪潮
2021/03/04 咖啡文化
人大复印资料处理程序_查询篇
2006/10/09 PHP
PHP采集相关教程之一 CURL函数库
2010/02/15 PHP
php获取qq用户昵称和在线状态(实例分析)
2013/10/27 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
PHP基于工厂模式实现的计算器实例
2015/07/16 PHP
PHP基于GD库的图像处理方法小结
2016/09/27 PHP
浅谈PHP安全防护之Web攻击
2017/01/03 PHP
如何使用JS获取IE上传文件路径(IE7,8)
2013/07/08 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
使用JS取得焦点(focus)元素代码
2014/03/22 Javascript
javascript类型系统 Array对象学习笔记
2016/01/09 Javascript
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
2016/05/13 Javascript
JavaScript中值类型和引用类型的区别
2017/02/23 Javascript
MUI 解决动态列表页图片懒加载再次加载不成功的bug问题
2017/04/13 Javascript
JavaScript模块详解
2017/12/18 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
[36:09]Secret vs VG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.24
2019/09/10 DOTA
Python代码实现KNN算法
2017/12/20 Python
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
Python求一批字符串的最长公共前缀算法示例
2019/03/02 Python
Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str
2019/08/07 Python
Python环境管理virtualenv&virtualenvwrapper的配置详解
2020/07/01 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
Html5大文件断点续传实现方法
2015/12/05 HTML / CSS
彪马西班牙官网:PUMA西班牙
2019/06/18 全球购物
大一军训感言
2014/01/09 职场文书
工作迟到检讨书
2014/02/21 职场文书
煤矿安全知识竞赛活动总结
2014/07/07 职场文书
出差报告范文
2014/11/06 职场文书
平安建设汇报材料
2014/12/29 职场文书
小学教师师德师风承诺书
2015/04/28 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
全网非常详细的pytest配置文件
2022/07/15 Python