详情页

帝国CMS 移动端同步生成功能修改文件方法

时间:2023年06月09日

编辑:佚名

本文需配合东坡网开发的“移动端同步生成”插件使用,需要修改的文件为 e/class/functions.php ,修改的函数一共五个,分别是:
ListHtml——生成栏目类列表函数;
ListHtmlIndex——生成专题类列表函数;
GetHtml——生成内容页函数;
NewsBq——生成首页、封面页函数;
NotinfoListHtml——列表页生成辅助函数。
一、ListHtml函数修改
查找“//生成信息列表”可快速找到此函数。
1.1 在此函数的第一行,global尾部插入$mob_r全局变量,插入后第一行变成:
global $empire,$dbtbpre,$emod_r,$public_r,$class_r,$class_zr,$fun_r,$class_tr,$level_r,$etable_r,$mob_r;
1.2 在此函数的第二行插入代码
include_once ECMS_PATH."e/dongpo/mob/config.php";
include_once ECMS_PATH."e/dongpo/mob/dp_funs.php";
1.3 此函数有4个if($enews=)分支,每个分支都有 $dolink= 代码
在前3处的$dolink下一行插入代码
$mdolink=$mob_r['msiteurl'].$doclasspath."/";
第四处分支插入代码
$mdolink=$mob_r['msiteurl'].str_replace($userlistr['addpath'].'../../','',$dopath);
 1.4 查找“//无信息”,将此if(empty($num))语句改为以下代码:
    //无信息
    if(empty($num))
    {
        $noinfopath=$dopath."index".$dotype;
        NotinfoListHtml($noinfopath,$list_r,$classlevel,$mdolink);
        m_ListHtml($classid,$fields,$enews,$userlistr);
        return "";
    }
1.5 查找“//替换分页数”,在其上插入代码:
            //移动端网址
            if($pagenum==1){
                $murl=$mdolink;
            }else{
                $murl=$mdolink."index_".$ok.$dotype;
            }
            $string=str_replace('[--murl--]',$murl,$string);
1.6 在此函数的尾部代码 $empire->free($sql); 上一行插入代码:
    m_ListHtml($classid,$fields,$enews,$userlistr);
至此,ListHtml函数修改完毕。
二、ListHtmlIndex函数修改
查找“//生成索引类信息列表”可快速找到此函数。
2.1 在global中插入$mob_r全局变量,操作方法完全等同于1.1;
2.2 在函数第二行引入config文件以及dp_funs.php文件,操作方法完全等同于1.2;
2.3 此函数有3个if($enews=)分支,每个分支都有 $dolink= 代码。
在第一处代码下一行插入:
$mdolink=$mob_r['msiteurl'].$doclasspath."/";
在第二处代码下一行插入:
$mdolink=$mob_r['msiteurl'].$doclasspath."/type".$classid.$cr['ttype'];
在第三处代码下一行插入:
$mdolink=$mob_r['msiteurl'].str_replace($userlistr['addpath'].'../../','',$dopath);
 2.4 查找“//无信息”,将此if(empty($num))语句改为以下代码:
    //无信息
    if(empty($num))
    {
        $noinfopath=$dopath.$dofile.$dotype;
        NotinfoListHtml($noinfopath,$list_r,$classlevel,$mdolink);
        m_ListHtmlIndex($classid,$fields,$enews,$userlistr);
        return "";
    }
2.5 查找“//替换分页数”,在其上插入代码:
            //移动端网址
            if($pagenum==1){
                $murl=$mdolink;
            }else{
                $murl=$mdolink."index_".$ok.$dotype;
            }
            $string=str_replace('[--murl--]',$murl,$string);
2.6 在此函数的尾部代码 $empire->free($sql); 上一行插入代码:
    m_ListHtmlIndex($classid,$fields,$enews,$userlistr);
至此,ListHtmlIndex函数修改完毕。
三、修改GetHtml函数
查找“//生成内容文件”可快速找到此函数。
3.1 在global中插入$mob_r全局变量,操作方法完全等同于1.1;
3.2 在函数第二行引入config文件以及dp_funs.php文件,操作方法完全等同于1.2;
3.3 找到“$dolink” ,在其下插入代码:
$mdolink=$mob_r['msiteurl'].$iclasspath.$newspath;
3.4 查找“//写文件”,一共找到两处
在第一处插入代码:
            if($j==1){
                $murl=$mdolink.$add[filename].$filetype;
            }else{
                $murl=$mdolink.$add[filename].'_'.$j.$filetype;
            }                
            $string=str_replace('[--murl--]',$murl,$string);
在第二处插入代码:
        $murl=$mdolink.$add[filename].$filetype;
        $string=str_replace('[--murl--]',$murl,$string);
3.5 在函数末尾插入代码:
mGetHtml($classid,$id,$add,1,1);
至此,GetHtml函数修改完成。
四、NewsBq函数修改
查找“function NewsBq”可快速找到此函数。
4.1 在global中插入$mob_r全局变量,操作方法完全等同于1.1;
4.2 在函数第二行引入config文件以及dp_funs.php文件,操作方法完全等同于1.2;
4.3 在语句“if($enews==0) ,上方插入代码:
mNewsBq($classid,$indextext,$enews,$doing);
4.4 在 if($enews==0)//生成大栏目 括号第一行插入代码:
$murl=m_ReturnBqClassname($classid,9);
4.5 在 elseif($enews==3)//专题 括号第一行插入代码:
$murl=m_ReturnBqZtname($classid);
4.6 在 elseif($enews==4)//专题子类 括号第一行插入代码:
$murl=m_ReturnBqZtname($classid).'type'.$classid.$cr['ttype'];
4.7 在 elseif($enews==1)//生成首页文件 括号第一行插入代码:
$murl=$mob_r['msiteurl'];
4.8 在 //替换标签 上一行插入代码:
$indextext=str_replace('[--murl--]',$murl,$indextext);
至此,NewsBq函数修改完成。
五、NotinfoListHtml函数修改
查找“//无信息的信息列表”可快速找到此函数。
将此函数替换成如下代码:
//无信息的信息列表
function NotinfoListHtml($path,$list_r,$classlevel,$mdolink){
    global $fun_r;
    $word=$fun_r['HaveNotListInfo'];
    $pagetext=$list_r[0].$word.$list_r[2];
    $pagetext=str_replace('[!--show.page--]','',$pagetext);
    $pagetext=str_replace('[!--show.listpage--]','',$pagetext);
    $pagetext=str_replace('[!--list.pageno--]','',$pagetext);
    $pagetext=str_replace('[--murl--]',$mdolink,$pagetext);
    WriteFiletext($path,$classlevel.$pagetext);
}
至此,NotinfoListHtml函数修改完成。
相关文章
猜你需要