帝国cms的7.5的自定义列表非常好用,但是不能是动态页面。本教程教您如何修改。
-
修改functions.php 这个文件在e的class目录下,是帝国cms的核心函数文件,修改前要备份下。
查找://生成自定义信息列表
把这个函数(ReUserlist)修改为这样的:
//生成自定义信息列表 function ReUserlist($listr,$addpath){ $listr['addpath']=$addpath; DoFileMkDir(eReturnTrueEcmsPath().'e/data/'.$listr['filepath']);//建目录maddpath eAutodo_AddDo('ReUserlist',$listr['listid'],0,0,0,0);//moreportdo //add by jiuhecai for dt user list if($listr['filetype']=='.php'){ if(function_exists('jhc_dtusrlist'))jhc_dtusrlist($listr); }else{ ListHtml($listr['listid'],$field,4,$listr); } }
2.修改自定义函数文件,就是userfun.php,这个文件也在e的class目录下。记得备份。增加一个函数:
//自定义动态列表 function jhc_dtusrlist($listr){ global $dbtbpre; $pagestr=file_get_contents(ECMS_PATH.'e/data/template/dtuserlist.php'); $pagestr=str_replace("exit;exit;",'',$pagestr); $pagestr=str_replace("[!--lencord--]",$listr['[lencord]'],$pagestr); $pagestr=str_replace("[!--listtempid--]",$listr['listtempid'],$pagestr); $pagestr=str_replace("[!--totalsql--]",$listr['totalsql'],$pagestr); $pagestr=str_replace("[!--listsql--]",$listr['listsql'],$pagestr); $pagestr=str_replace("[!--pagetitle--]",$listr['pagetitle'],$pagestr); $pagestr=str_replace("[!--pagekeywords--]",$listr['pagekeywords'],$pagestr); $pagestr=str_replace("[!db.pre!]",$dbtbpre,$pagestr); $pagestr=str_replace("[!--pagedescription--]",$listr['pagedescription'],$pagestr); $path=$listr['filepath']; $jige=count(explode('/',strstr($path,'../../')))-3; $shendu=str_repeat('../',$jige ); $pagestr=str_replace("[!--id--]",$id,$pagestr); $pagestr=str_replace("[!--shendu--]",$shendu,$pagestr); $path=eReturnTrueEcmsPath().'e/data/'.$path.'index.php'; WriteFiletext($path,$pagestr); }
3. 新建一个名字为dtuserlist.php的文件,在位置e/data/template/dtuserlist.php
其内容为:
此处隐藏5136个字。
阅读需要这样处理以后,当自定义列表的后缀选择php的时候,就能自动生成动态列表页面。