小李SEO博客

網站優化服務

帝國CMS內容頁根據TAG匹配相關文章列表代碼

功能:

比如說有3個TAG,每個TAG下有4篇文章,現在指定要顯示10篇文章,那么每個TAG要拿出4篇,共有12篇文章,最終會打亂這12篇文章,然后取10篇
3個TAG,每個TAG下有3篇文章,現在指定要顯示10篇文章,那么每個TAG要拿出3篇文章,共有9篇文章
3個TAG,A有2篇文章,B有5篇文章,C有3篇文章,現在要顯示10篇文章,那么A拿出2篇文章,B拿出5篇文章,C拿出3篇文章,共有10篇文章
如果 A、B、C中除了當前文章,還有相同的文章,那么會扣除重復的那篇文章,只取一次。所以指定的數量會有偏差

以下代碼放到/e/class/userfun.php里!

<?phpfunctionuser_otherlink($limit=5){global$dbtbpre,$empire,$navinfor,$class_r;if($navinfor[infotags]){$classid=(int)$classid;$limit=(int)$limit;$tbname=$class_r[$navinfor[classid]][tbname];$tagarr=explode(",",$navinfor[infotags]);$arr=array();$num=ceil($limit/count($tagarr));foreach($tagarras$k=>$v){if(count($tagarr)==$k+1){$num=$limit-count($arr);}else{if($i<$num){$num=ceil(($limit-count($arr))/count($tagarr));}}$t=$empire->fetch1("selecttagid,numfrom{$dbtbpre}enewstagswheretagname='$v'");if($t[tagid]){$sql=$empire->query("selectidfrom{$dbtbpre}enewstagsdatawheretagid=$t[tagid]");$i=0;while($s=$empire->fetch($sql)){if(in_array($s[id],$arr)||$s[id]==$navinfor[id]){continue;}else{$arr[]=$s[id];$i++;}if($i==$num){break;}if(count($arr)==$limit){break2;}}if($t[num]>$num){$linshi=$t[tagid];}}}if(count($arr)>0){$inid=implode(",",$arr);if(count($arr)<$limit&&$linshi){$sql=$empire->query("selectidfrom{$dbtbpre}enewstagsdatawheretagid=$linshiandidnotin($inid)");while($s=$empire->fetch($sql)){$arr[]=$s[id];if(count($arr)==$limit){break;}}}$inid=implode(",",$arr);$str="";$news=$empire->query("selectid,title,titleurl,titlepicfrom{$dbtbpre}ecms_{$tbname}whereidin($inid)");while($n=$empire->fetch($news)){$str.='<li><ahref="'.$n[titleurl].'">'.$n[title].'</a></li>';}}return$str;}}?>

內容頁用以下代碼調用:5為顯示數量自己改

<?=user_otherlink(5)?>

上一篇:帝國CMS在js登陸模板中調用當前登陸用戶的頭像! 下一篇:帝國CMS彈出下載和直接下載的修改方法!
相關帝國cms文章閱讀
SEO公司排名
在线视频国产网站你懂得},97se亚洲国产综合自在线观看,婷婷五月色综合香五月a,欧洲自拍视频另类中文字幕
?
QQ在線咨詢
SEM競價推廣
137-1296-7640
SEO優化外包
137-1296-7640