仿站咨询QQ:2587483189

手机微信同号:15850888840

浅谈dedecms模板引擎工作原理及自定义标签

理解织梦模板引擎有什么意义?一方面可以更好地自定义标签。更多在于了解织梦系统,理解模板引擎是理解织梦工作原理的第一步。理解织梦会使我们写php代码时更顺手,同时能学习一些php代码的组织方式。

这似乎不是那么简单,如果你只想学习自定义标签,可以看一下“是否需要自定义标签”和““扩展标签””就够了。

一解析式引擎

如果你还没用过dedecms的标签,先用一下,也可以看一下“dedecms网页模板编写”。熟悉一下memberlist这个标签,下面会以这个标签为例。

织梦提供的模板分析引擎有解析式和编译式两种,由于现在主要使用前者,这里也只讨论前者。
 

先来写个模板解析的hello world 程序

***root/test.php  封面php(root指的是根目录,以下都假设dedecms被放在了网站的根目录)
 

<?php
    require_once (dirname(__file__).'/include/common.inc.php');
    //利用解析式模板所需的文件
    require_once (dirname(__file__).'/include/dedetag.class.php');
 
//生成解析模板引擎类对象
$dtp=new DedeTagParse();
//设置命名空间,由于下面的标签用tianya命名空间,所以要设置一下。
$dtp->SetNameSpace('tianya');
$dtp->LoadTemplate(dirname(__file__).'\test.tpl.htm ');
 
//把标签替换成具体的值
foreach ($dtp->CTags as $id=>$tag)
{
    if($tag->GetName()=='my')
        //把id为$id的tag翻译成这是my标签<br/>
        $dtp->Assign($id,'这是my标签<br/>');   
    else if($tag->GetName()=='test')
        $dtp->Assign($id,'这是test标签<br/>');
}
 
//把解析好的html文本echo出来

  • 上一篇:织梦dedecms对任意字段截取固定值并且多余部分用省略号代替
  • 下一篇:织梦dedecms自定义表单限制IP24小时只能提交一次
  • 来源:未知//所属分类: dede仿站 /更新时间:2017-02-22
    相关仿站教程