织梦模板标记简介


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 水平的题目
May 30 PHP
php源代码安装常见错误与解决办法分享
May 28 PHP
PHP array_multisort() 函数的深入解析
Jun 20 PHP
php中如何使对象可以像数组一样进行foreach循环
Aug 09 PHP
PHP模块memcached使用指南
Dec 08 PHP
详解php魔术方法(Magic methods)的使用方法
Feb 14 PHP
简单解析PHP程序的运行流程
Jun 23 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
Apr 01 PHP
PHP registerXPathNamespace()函数讲解
Feb 03 PHP
PHP数组遍历的几种常见方式总结
Feb 15 PHP
PHP实现统计代码行数小工具
Sep 19 PHP
php实现记事本案例
Oct 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/02 无线电
PHP自定session保存路径及删除、注销与写入的方法
2014/11/18 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
替代window.event.srcElement效果的可兼容性的函数
2009/12/18 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
2013/01/23 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
文本框水印提示效果的简单实现代码
2014/02/22 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
ionic2 tabs 图标自定义实例
2017/03/08 Javascript
jQuery 控制文本框自动缩小字体填充
2017/06/16 jQuery
微信浏览器禁止页面下拉查看网址实例详解
2017/06/28 Javascript
详解vuex结合localstorage动态监听storage的变化
2018/05/03 Javascript
vue发送ajax请求详解
2018/10/09 Javascript
使用canvas实现一个vue弹幕组件功能
2018/11/30 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
2018/12/03 Javascript
微信小程序和H5页面间相互跳转代码实例
2019/09/19 Javascript
JavaScript中的函数申明、函数表达式、箭头函数
2019/12/06 Javascript
js实现炫酷光感效果
2020/09/05 Javascript
python自然语言编码转换模块codecs介绍
2015/04/08 Python
python3个性签名设计实现代码
2018/06/19 Python
Python抽象和自定义类定义与用法示例
2018/08/23 Python
Python数据报表之Excel操作模块用法分析
2019/03/11 Python
在Python中使用filter去除列表中值为假及空字符串的例子
2019/11/18 Python
Python基于os.environ从windows获取环境变量
2020/06/09 Python
加拿大百叶窗和窗帘定制网站:Blinds
2017/01/30 全球购物
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
应届大学生简历中的自我评价
2014/01/15 职场文书
服务之星获奖感言
2014/01/21 职场文书
《小壁虎借尾巴》教学反思
2014/02/16 职场文书
学生社团文化节开幕式主持词
2014/03/28 职场文书
母校寄语大全
2014/04/10 职场文书
搞笑爱情保证书
2014/04/29 职场文书
刑事辩护授权委托书范本
2014/10/17 职场文书
Python的flask接收前台的ajax的post数据和get数据的方法
2021/04/12 Python
详解Go与PHP的语法对比
2021/05/29 PHP