在CI中使用扩展的Discuz模板引擎 (原创)
ci本身没有模板引擎,当然你可以很轻松的在里面扩展第三方的引擎,而Discuz在模板方面的技术非常成熟,标签简单,上手特别容易,
通过几天的将dz的模板引擎从内核中单独分离出来,而且扩充了缓存的功能,经过测试,
非常完美,先分享出来给大伙。
贴一下内核类的部分代码
/**
* 模板参数信息
*
* @var array
*/
var $_options = array();
//2008-7-5
//引入CI
var $CI;
/**
* 构造方法
* 适用于php4 和php5
* @return void
*/
function __construct()
{
return DzTemplate();
}
function DzTemplate()
{
//初始化
$this->CI =& get_instance();
$this->_options = array(
'template_dir' => SMARTY_DIR, //模板文件所在目录
'cache_dir' => SMARTY_DIR .'/cache/', //缓存文件存放目录
'auto_update' => true, //当模板文件改动时是否重新生成缓存
'cache_lifetime' => 0, //缓存生命周期(分钟),为 0 表示永久
);
}
在初始化下面的options 里设置模板和缓存文件目录,缓存周期等。
将附件解压到你的项目文件中,直接使用,
DZ模板类文件在libraries
模板目录跟CI的默认模板目录一样都是views
还有一个简单的测试文件在controllers目录, 晕,忘记附件了。。
至于模板标签的制作,请各位自己参照dz的模板标签用法 非常不错!加分! 听起来不错,下来看看 谢谢,改天试试看:) 很不错记号一下! 顶 感谢分享~ 有谁用起来了? 运行失败 是的。多次出现 undefined提示
第一次是APPNAME写错了,应该是APPPATH
第二次是undefined function
Fatal error: Call to undefined function dztemplate() in D:\www\ci\system\libraries\DzTemplate.php on line 33
页:
[1]
2