织梦dedecms通过自定义扩展函数实现引用htm模板文件

在dedecms系统的非模板文件里引用模板文件,必须通过原生php去写,而用模板标签是没作用的,久久经验网将介绍如何通过扩展函数实现引用模板文件

 织梦dedecms系统里,偶尔会碰到在htm文件里引用另外一个htm文件,如果两个文件本身都在htm模板目录里,那么用dedecms标签即可实现引用:

  1. {dede:include filename="head.htm"/} 

假设文件不在同一个目录,而我又想在htm里引用模板目录的模板文件该怎么办呢?比如dede留言簿的头部就那么几个字,风格和其它页面不统一,想引用模板里的head.htm,如果用刚才dede标签去引用是无法实现的,不仅仅织梦cms系统如此,其它类似的系统也一样!

但不是没有办法,dede是个很灵活的系统,就看我们怎么去发现拉。

解决办法:

打开include/extend.func.php,在里面添加一个自定义函数

  1. function pasterTempletDiy($path){//参数:要引用的模板路径,基于templets目录 
  2.     require_once(DEDEINC."/arc.partview.class.php"); 
  3.     global $cfg_basedir,$cfg_templets_dir
  4.     $tmpfile = $cfg_basedir.$cfg_templets_dir."/".$path;//模板文件的路径 
  5.     $dtp = new PartView(); 
  6.     $dtp->SetTemplet($tmpfile); 
  7.     $dtp->Display(); 

在需要引用htm文件的文件里引用:

  1. <?php 
  2. pasterTempletDiy("default/head.htm");//此处为默认的模板路径 
  3. ?> 

完成。

 

相关经验

导读书签
书签初始化中…