根据Tags 调用相关文章,绝对好用!

以下是具体实现过程:
以下代码放到/e/class/userfun.php里!
  1. <?php
  2. function user_otherlink($limit=5){
  3.         global $dbtbpre,$empire,$navinfor,$class_r;
  4.     if($navinfor[infotags]){
  5.             $classid=(int)$classid;
  6.         $limit=(int)$limit;
  7.         $tbname=$class_r[$navinfor[classid]][tbname];
  8.         $tagarr=explode(",",$navinfor[infotags]);
  9.         $arr=array();
  10.         $num=ceil($limit/count($tagarr));
  11.         foreach($tagarr as $k=>$v){
  12.                         if(count($tagarr)==$k+1){
  13.                                 $num=$limit-count($arr);
  14.                         }else{
  15.                                 if($i<$num){
  16.                                         $num=ceil(($limit-count($arr))/count($tagarr));
  17.                                 }               
  18.                         }
  19.             $t=$empire->fetch1("select tagid,num from {$dbtbpre}enewstags where tagname='$v'");
  20.                         if($t[tagid]){
  21.                                 $sql=$empire->query("select id from {$dbtbpre}enewstagsdata where tagid=$t[tagid]");
  22.                                 $i=0;
  23.                                 while($s=$empire->fetch($sql)){
  24.                                         if(in_array($s[id],$arr)||$s[id]==$navinfor[id]){
  25.                                                 continue;
  26.                                         }else{
  27.                                                 $arr[]=$s[id];
  28.                                                 $i++;
  29.                                         }
  30.                                         if($i==$num){
  31.                                                 break;
  32.                                         }
  33.                                         if(count($arr)==$limit){
  34.                                                 break 2;
  35.                                         }
  36.                                 }
  37.                                 if($t[num]>$num){
  38.                                         $linshi=$t[tagid];
  39.                                 }
  40.                         }
  41.         }
  42.         if(count($arr)>0){
  43.                         $inid=implode(",",$arr);
  44.                         if(count($arr)<$limit&&$linshi){
  45.                                 $sql=$empire->query("select id from {$dbtbpre}enewstagsdata where tagid=$linshi and id not in($inid)");
  46.                                 while($s=$empire->fetch($sql)){
  47.                                         $arr[]=$s[id];
  48.                                         if(count($arr)==$limit){
  49.                                                 break;
  50.                                         }
  51.                                 }
  52.                         }
  53.                         $inid=implode(",",$arr);
  54.                         $str="";
  55.                         $news=$empire->query("select id,title,titleurl,titlepic from {$dbtbpre}ecms_{$tbname} where id in($inid)");
  56.                         while($n=$empire->fetch($news)){
  57.                                 $str.='<li><a href="'.$n[titleurl].'">'.$n[title].'</a></li>';
  58.                         }      
  59.                 }
  60.         return $str;
  61.            }
  62. }
  63. ?>
复制代码
内容页模板用以下代码调用:5为显示数量 自己改

<?=user_otherlink(5)?>




上一篇:帝国cms7.5点击加载更多,滚动加载更多 优化版
下一篇:帝国cms首页加载更多,滚动无限加载方法
如无回复请发邮件