帝国CMS实现通过用tag标签调用相关文章分享!

帝国CMS实现通过用tag标签调用相关文章

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

一、自定义函数

自定义函数user_OtherLink ,将此函数放入 eclassuserfun.php 文件中。

 //根据tag获取相关信息  function user_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("select otherlinktemp,otherlinktempsub,otherlinktempdate from ".GetTemptb("enewspubtemp")." limit 1");  $temp_r=explode("[!--empirenews.listtemp--]",$tr['otherlinktemp']);  $str='';  $tagsql=$empire->query("select * from {$dbtbpre}enewstagsdata where id='$navinfor[id]' and classid='$navinfor[classid]'");  $i=0;  $isprint=array();  while($tagr=$empire->fetch($tagsql)){  if($i>=$num){  break;  }  $gsql=$empire->query("select * from {$dbtbpre}enewstagsdata where tagid='$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." where id='$gr[id]' limit 1");  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) ;

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

调用示例:

—-想了解帝国CMS实现通过用tag标签调用相关文章分享!且更多的模板cms网站教程关注<计算机技术网(www.ctvol.com)!!>

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

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/ictteaching/459803.html

(0)
上一篇 2020年10月22日
下一篇 2020年10月22日

精彩推荐