最新公告
  • 欢迎您光临网站无忧模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 帝国cms移动端同步生成插件功能修改文件方法

    正文概述 六哥   2020-09-29   203

    插件地址:https://www.wangzhan5u.com/yuanma/dg/480.html

    本文需配合 “移动端同步生成”插件使用,需要修改的文件为 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/liuge/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函数修改完成。

    移动端生成的文件同步删除步骤:

    打开文件e/class/functions.php,查找”function DelNewsFile”,找到函数DelNewsFile,替换成以下代码:

    function DelNewsFile($filename,$newspath,$classid,$newstext,$groupid=0){
            global $class_r,$addgethtmlpath,$mob_r;
            include_once ECMS_PATH."e/liuge/mob/config.php";
            //文件类型
            if($groupid)
            {
                     $filetype=".php";
            }
            else
            {
                     $filetype=$class_r[$classid][filetype];
            }
            //是否有日期目录
            if(empty($newspath))
            {
                     $mynewspath="";
            }
            else
            {
                     $mynewspath=$newspath."/";
            }
            $iclasspath=ReturnSaveInfoPath($classid,$id);
            $r=explode("[!--empirenews.page--]",$newstext);
            for($i=1;$i<=count($r);$i++)
            {
                     if(strstr($filename,'/'))
                     {
                        DelPath(eReturnTrueEcmsPath().$iclasspath.$mynewspath.ReturnInfoSPath($filename));
                        DelPath($mob_r['msitepath'].$iclasspath.$mynewspath.ReturnInfoSPath($filename));
                     }
                     else
                     {
                             if($i==1)
                             {
                                     $file=eReturnTrueEcmsPath().$iclasspath.$mynewspath.$filename.$filetype;
                                     $mfile=$mob_r['msitepath'].$iclasspath.$mynewspath.$filename.$filetype;
                             }
                             else
                             {
                                 $file=eReturnTrueEcmsPath().$iclasspath.$mynewspath.$filename."_".$i.$filetype;
                                  $mfile=$mob_r['msitepath'].$iclasspath.$mynewspath.$filename."_".$i.$filetype;
                             }
                             DelFiletext($file);
                             DelFiletext($mfile);
                     }
            }
    }
    

    说明:

    对于没有使用过移动端同步生成插件的帝国程序也可以使用,需要将上述代码中的 $mob_r[‘msitepath’] 修改成自己的移动端绝对地址。


    网站无忧 » 帝国cms移动端同步生成插件功能修改文件方法

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    发表评论

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者
    升级SVIP尊享更多特权立即升级