DedeCMS模板引擎开发说明(二)

作者: 坎肩儿 分类: DEDECMS 发布时间: 2011-12-22 16:39

来源于:官方视频教程

整理如下:

直接贴上2个文件的代码,里面有详细的注释:

1、PHP页面代码:

<?php
require_once(dirname(__FILE__).”/include/common.inc.php”);

$action = isset($_GET[‘action’]) ? preg_replace(“#[^a-z]#i”, ”,$_GET[‘action’]) : ”;

if($action == ‘tpl’)
{
 require_once(DEDEINC.’/dedetemplate.class.php’);
 $tpl = new DedeTemplate(dirname(__file__));
 // 载入模板文件
 // 因为设定了模板目录,所以这里直接填入文件名
 // 当然,你可以看下模板解析类,这里面有一些映射的方法
 
 $tpl->LoadTemplate(‘code.tpl.htm’);
 
 // 普通变量的传递
 $title = “DedeCMS模板,必须要学习下。”;
 $tpl->SetVar(‘title’,$title);
 
 // 数组的传递、遍历数组
 $arr = array(
  ‘name’ => ‘明锐网络’,
  ‘url’ => ‘http://www.homr.cn’,
  ‘Address’ => ‘共青团路园林大厦’,
 );
 $tpl->SetVar(‘arr’,$arr);
 
 // if else 的应用
 $isshow = true;
 $tpl->SetVar(‘isshow’,$isshow); 
 
 // 模板里面直接调用function函数
 $now = time();
 $tpl->SetVar(‘now’,$now);
 
 // 需要将页面显示出来
 $tpl->Display();
 // 生成HTML文件
 //$tpl->SaveTo(‘code.html’);
 exit();
}
?>

2、htm模板页面代码:

<body>
测试模板:{dede:var name=’title’/} <br />
名称:{dede:var.arr.name/}<br />
公司网址:{dede:var.arr.url/}<br />
{dede:cfg.basehost/}<br />
{dede:global.cfg_basehost/}<br />
时间:{dede:var.now function=”MyDate(‘Y-m-d H:i:s’, @me)”/}<br />
遍历数组:<br>
{dede:array.arr comment=’这里面是可以写注释的’}
{dede:key/} => {dede:value/}<br />
{/dede:array}

{dede:php}
echo “php标签,可以直接使用。”;
{/dede:php}
<br />
{dede:if var.isshow}
不能显示
{else}
可以显示了
{/dede:if}
<br />
{dede:memberlist}
 {dede:field.mid/}-{dede:field.uname/}<br />
{/dede:memberlist}
<br />
自定义的调用:<br />
{dede:mjmn mid=’4′ rstype=’string’/}
</body>
</html>

OK,整理至此。