侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

帝国CMS实现用tag调用相关文章

2022-05-31 星期二 / 0 评论 / 0 点赞 / 127 阅读 / 4981 字

用tag调用相关文章的方法在帝国官方论坛上有人发过方法,但所使用的函数效率太低而且无法制定参数,不好用。东坡网现在使用的也是利用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) ;

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

调用示例:

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

广告 广告

评论区