帝国CMS模板内容页现用TAG调用相关文章的方法,一起来看看怎么操作吧:

  用tag调用相关文章的方法在帝国官方论坛上有人发过方法,但所使用的函数效率太低而且无法制定参数,不好用。现在使用的也是利用tag调用相关文章,非常好用。

  一、自定义函数

  自定义函数user_OtherLink,将此函数放入e\class\userfun.php文件中。

//根据tag获取相关信息 functionuser_OtherLink($num,$classid=0,$mid=0){ global$dbtbpre,$empire,$navinfor,$class_r; if(empty($navinfor['infotags'])){ return'暂无相关信息'; } if($mid&&$classid&&$class_r[$classid]['modid']!=$mid){ return'暂无相关信息'; } $tr=$empire->fetch1("selectotherlinktemp,otherlinktempsub,otherlinktempdatefrom".GetTemptb("enewspubtemp")."limit1"); $temp_r=explode("[!--empirenews.listtemp--]",$tr['otherlinktemp']); $str=''; $tagsql=$empire->query("select*from{$dbtbpre}enewstagsdatawhereid='$navinfor[id]'andclassid='$navinfor[classid]'"); $i=0; $isprint=array(); while($tagr=$empire->fetch($tagsql)){ if($i>=$num){ break; } $gsql=$empire->query("select*from{$dbtbpre}enewstagsdatawheretagid='$tagr[tagid]'"); while($gr=$empire->fetch($gsql)){ $myprint='id'.$gr['id'].'class'.$gr['classid']; if(array_search($myprint,$isprint)!==false){ continue; } $isprint[]=$myprint; if($classid&&$classid!=$gr['classid']){ continue; } if($mid&&$mid!=$gr['mid']){ continue; } if($gr['id']==$navinfor['id']&&$gr['classid']==$navinfor['classid']){ continue; } $tbname=$class_r[$gr['classid']]['tbname']; if(!$tbname||InfoIsInTable($tbname)){ continue; } $r=$empire->fetch1("select*from{$dbtbpre}ecms_".$tbname."whereid='$gr[id]'limit1"); if(!$r['id']){ continue; } $str.=RepOtherTemp($temp_r[1],$r,$tr); $i+=1; if($i>=$num){ break; } } } $keyboardtext=$temp_r[0].$str.$temp_r[2]; if($str){ return$keyboardtext; }else{ return'暂无相关信息'; } }

  二、 使用方法:

  函数说明:user_OtherLink(调用条数,指定栏目id,指定模型id) ;

  相关文章模板采用的是公共模板里的相关信息模板。

  调用示例:

<?=user_OtherLink(10,0,1)?>

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:312334557@qq.com 我们将配合处理!

原文地址:《帝国CMS模板内容页怎么用TAG调用相关文章》发布于2022-10-08 14:17:39