dede:include filename="" 路径的问题:无法在这个位置找到路径

来源:互联网 发布:商家订单导出软件 编辑:程序博客网 时间:2024/06/05 09:26

织梦模板DEDECMS

首先看代码:文件目录为:

dede安装根目录/include/dedetag.class.php

    /**     *  引入文件     *     * @access    public     * @param     string  $filename  文件名     * @param     string  $ismake  是否需要编译     * @return    string     */    function IncludeFile($filename, $ismake='no')    {        global $cfg_df_style;        $restr = '';        if($filename=='')        {            return '';        }        if( file_exists(DEDEROOT."/templets/".$filename) )//默认的根目录为DEDEROOT."/templets/"        {            $okfile = DEDEROOT."/templets/".$filename;        }        else if(file_exists(DEDEROOT.'/templets/'.$cfg_df_style.'/'.$filename) )//默认根目录为default下的路径即:DEDEROOT."/templets/default/"        {            $okfile = DEDEROOT.'/templets/'.$cfg_df_style.'/'.$filename;        }        else        {            return "无法在这个位置找到: $filename";        }        //编译        if($ismake!="no")        {            require_once(DEDEINC."/channelunit.func.php");            $dtp = new DedeTagParse();            $dtp->LoadTemplet($okfile);            MakeOneTag($dtp,$this->refObj);            $restr = $dtp->GetResult();        }        else        {            $fp = @fopen($okfile,"r");            while($line=fgets($fp,1024)) $restr.=$line;            fclose($fp);        }        return $restr;    }}

由以上代码可以得知:dede:include 判断两种路径:一种是以templets/下的路径;一种是系统默认模板的路径default。

如果设置路径非这两种路径,就显示无法在这个位置找到这个文件:解决方式有两种:一种是在这里再添加一种判断;另外一种是根据文件的规定,写出符合文件规定的路径方式就可以解决。

参考网页:http://blog.sina.com.cn/s/blog_66a0738b0100l7lu.html




原创粉丝点击