dedecms调用指定模板源码分析

在dedecms当中,所有的后台栏目,都是指定所建的htm代码,进而网站会输出内容。最模板这次二次开发网站,有幸找了写该函数。

如下:

 

function GetTempletFile()

   {

       global $cfg_basedir,$cfg_templets_dir,$cfg_df_style;

       $cid = $this->ChannelUnit->ChannelInfos['nid'];

       if(!empty($this->Fields['templet']))

       {

           $filetag = MfTemplet($this->Fields['templet']);

         //  if( !preg_match("#\/#", $filetag) ) $filetag = $GLOBALS['cfg_df_style'].'/'.$filetag;

       }

       else

       {

           $filetag = MfTemplet($this->TypeLink->TypeInfos["temparticle"]);

 

       }

       $tid = $this->Fields['typeid'];

       $filetag = str_replace('{cid}', $cid,$filetag);

       $filetag = str_replace('{tid}', $tid,$filetag);

       $tmpfile = $cfg_basedir.$cfg_templets_dir.'/'.$filetag;

       if($cid=='spec')

       {

           if( !empty($this->Fields['templet']) )

           {

               $tmpfile = $cfg_basedir.$cfg_templets_dir.'/'.$filetag;

           }

           else

           {

               $tmpfile = $cfg_basedir.$cfg_templets_dir."/{$cfg_df_style}/article_spec.htm";

           }

       }

       if(!file_exists($tmpfile))

       {

           $tmpfile = $cfg_basedir.$cfg_templets_dir."/{$cfg_df_style}/".($cid=='spec' ? 'article_spec.htm' : 'article_default.htm');

       }

       if (!preg_match("#.htm$#", $tmpfile)) return FALSE;

       return $tmpfile;

   }

关键部分是      $tmpfile = $cfg_basedir.$cfg_templets_dir.'/'.$filetag;

 

意思 文章页调用不同模型下的指定模板。   $filetag = MfTemplet($this->TypeLink->TypeInfos["temparticle"]); 以这个循环指定。

 

那么如果做单独页,需要指定某个模板,直接修改$tmpfile 就可以了。

 


1、本网站名称:源码村资源网
2、本站永久网址:https://www.yuanmacun.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
源码村资源网 » dedecms调用指定模板源码分析
您需要 登录账户 后才能发表评论

发表评论

欢迎 访客 发表评论