织梦模板标记简介


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面向对象的使用教程 简单数据库连接
Nov 25 PHP
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
php url地址栏传中文乱码解决方法集合
Jun 25 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
Mar 06 PHP
PHP实现的多彩标签效果代码分享
Aug 21 PHP
PHP闭包函数传参及使用外部变量的方法
Mar 15 PHP
iOS10推送通知开发教程
Sep 19 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
Feb 13 PHP
laravel 使用auth编写登录的方法
Sep 30 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
Oct 11 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 PHP
PHP+MySql实现一个简单的留言板
Jul 19 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
配置最新的PHP加MYSQL服务器
2006/10/09 PHP
163的邮件用phpmailer发送(实例详解)
2013/06/24 PHP
php下获取http状态的实现代码
2014/05/09 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
PHP图像处理类库及演示分享
2015/05/17 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
2016/04/02 PHP
PHP常见字符串处理函数用法示例【转换,转义,截取,比较,查找,反转,切割】
2016/12/24 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
2017/02/23 PHP
如何实现iframe(嵌入式帧)的自适应高度
2006/07/26 Javascript
JavaScript事件列表解说
2006/12/22 Javascript
通过event对象的fromElement属性解决热区设置主实体的一个bug
2008/12/22 Javascript
Firefox中autocomplete="off" 设置不起作用Bug的解决方法
2011/03/25 Javascript
js展开闭合效果演示代码
2013/07/24 Javascript
javascript函数中参数传递问题示例探讨
2014/07/31 Javascript
JQuery自适应窗口大小导航菜单附源码下载
2015/09/01 Javascript
js实现带缓动动画的导航栏效果
2017/01/16 Javascript
javascript数据类型详解
2017/02/07 Javascript
Bootstrap模态框(Modal)实现过渡效果
2017/03/17 Javascript
微信小程序实现多宫格抽奖活动
2020/04/15 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
2018/04/22 Javascript
js实现购物车功能
2018/06/12 Javascript
详解vue中组件参数
2018/07/09 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
2019/04/30 Javascript
举例讲解Linux系统下Python调用系统Shell的方法
2015/11/07 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
python实现邮件发送功能
2019/08/10 Python
python并发爬虫实用工具tomorrow实用解析
2019/09/25 Python
Tensorflow: 从checkpoint文件中读取tensor方式
2020/02/10 Python
python redis存入字典序列化存储教程
2020/07/16 Python
华润集团网上药店:健一网
2016/09/19 全球购物
eBay比利时购物网站:eBay.be
2019/08/09 全球购物
物理系毕业生自荐书
2014/06/13 职场文书
小学数学教研活动总结
2014/07/01 职场文书
会计实训报告范文
2014/11/04 职场文书
继续教育心得体会(共6篇)
2016/01/19 职场文书
MySQL 分组查询的优化方法
2021/05/12 MySQL