帝国CMS搜索模板调用灵动标签的时候调用不出内容的解决方法,此方法来源于帝国CMS大学。个人根据教程修改使用后能成功获得到帝国CMS文章,并分享给所以帝国CMS爱好者使用。
帝国CMS搜索模板代码修改
打开/e/class/functions.php文件,搜索//标签替换4 ,在它的标签的后面增加一个标签,代码如下:
//标签替换5
function DtNewsBq2($classid,$indextext,$ecms=0){
global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$class_zr,$fun_r,$navclassid,$navinfor,$class_tr,$level_r,$etable_r;
$cachetime=0;
$file=ECMS_PATH.'e/data/tmp/list'.$classid.'.php';
if($cachetime&&file_exists($file)){
$filetime=filemtime($file);
$string=RepExeCode($string);//解析代码
return $string;
}
$indextext=stripSlashes($indextext);
$indextext=ReplaceTempvar($indextext);//替换全局模板变量
//替换标签
$indextext=DoRepEcmsLoopBq($indextext);
$indextext=RepBq($indextext);
//写文件
WriteFiletext($file,AddCheckViewTempCode().$indextext);
//读取文件内容
ob_start();
include($file);
$string=ob_get_contents();
ob_end_clean();
$string=RepExeCode($string);//解析代码
return $string;
}
打开/e/search/result/index.php文件,查找//替换公共模板变量 此处修改为以下代码:
//页面支持标签
$tempr[temptext]=DtNewsBq2('list'.$tempid,$tempr[temptext],0);
打开/e/search/result/index.php文件,找到如下代码(一般是在最顶):
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../data/dbcache/class.php");
require("../../class/q_functions.php");
require "../".LoadLang("pub/fun.php");
修改上面的代码为以下代码:
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../class/functions.php");
require("../../class/t_functions.php");
require("../../data/dbcache/class.php");
require "../".LoadLang("pub/fun.php");
最后打开帝国CMS搜索页面模板,使用帝国CMS灵动标签调用网站内容就可以调用成功了。如果调用不成功的请仔细阅读再做修改,注意修改帝国CMS搜索模板文件的时候要备份哦。