下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国cms根据tags调用相关信息(优化版,无当前文章)

307 2021-04-24 17:19:18

收藏
帝国cms的相关信息并不好用,不止模板受限,相关性也十分受限。如果是本文发表之后的相关文章,就无法显示出来。因此,我们可以有更好的方案。

帝国cms根据tags调用相关信息(优化版,无当前文章)
本方案根据tags自动调用,且经过优化后,不会调用当前文章到相关文章里。
 

tags调用相关信息源码

<?php
function user_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($tagarr as $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("select tagid,num from {$dbtbpre}enewstags where tagname='$v'");
if($t[tagid]){
$sql=$empire->query("select id from {$dbtbpre}enewstagsdata where tagid=$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){
break 2;
}
}
if($t[num]>$num){
$linshi=$t[tagid];
}
}
}
if(count($arr)>0){
$inid=implode(",",$arr);
if(count($arr)<$limit&&$linshi){
$sql=$empire->query("select id from {$dbtbpre}enewstagsdata where tagid=$linshi and id not in($inid)");
while($s=$empire->fetch($sql)){
$arr[]=$s[id];
if(count($arr)==$limit){
break;
}
}
}
$inid=implode(",",$arr);
$str="";
$news=$empire->query("select id,title,titleurl,titlepic from {$dbtbpre}ecms_{$tbname} where id in($inid)");
while($n=$empire->fetch($news)){
$str.='<li><a href="'.$n[titleurl].'">'.$n[title].'</a></li>';
}
}
return $str;
}
}
?>
 

tags调用相关信息调用方式

<?=user_otherlink(5)?>
此处的5为调用条数,可自行修改。
 

tags调用相关文章补充说明

本方案虽然能够根据tags调用相关文章,但由于涉及到相对复杂的处理,对生成效率会有一定的影响。如果数据量很大的站点慎用。

本文地址:https://xzo.com.cn/develop/empire/843.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
  • 隐藏的大佬 2021-05-10 16:30:41评论 #沙发#

    大佬牛逼,苦苦折腾了3天,翻了好多个网站,终于实现了

关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS怎样做隔行变色的功能?
帝国CMS怎样做隔行变色的功能?

一些颜色比较丰富的站点对模板的样式有要求,例如隔行变色:一行默认色,一行红色...

16 560
帝国cms怎样在新增信息时自动刷新自定义页面(sitemap.xml等)?
帝国cms怎样在新增信息时自动刷新自定义页面(sitemap.xml等)?

很多帝国CMS网站使用自定义页面制作sitemap或是其他一些重要的页面,如果每次...

3 360
帝国CMS有必要开发百度小程序吗?
帝国CMS有必要开发百度小程序吗?

百度小程序的开放生态对网站站长及企业商家而言,能够从中获取到什么呢?百度智...

1 342
有办法将多个帝国CMS网站会员系统数据库进行整合和同步吗?
有办法将多个帝国CMS网站会员系统数据库进行整合和同步吗?

如果能将手里的资源合并,会员渠道打通,则用起来更加舒服。而帝国CMS自带的会...

3 400
帝国cms一级栏目一直显示本栏目暂无新增信息怎么办?
帝国cms一级栏目一直显示本栏目暂无新增信息怎么办?

今天有客户联系鸥哥,说网站一级栏目下有4个子栏目,每个子栏目都是有信息的,但...

1 253
帝国cms生成自定义列表页怎样压缩?
帝国cms生成自定义列表页怎样压缩?

帝国cms生成的静态页面,大多是在gethtml()函数下实现代码压缩,但自定义页面、...

0 318
帝国cms怎样去掉面包屑导航里的隐藏栏目
帝国cms怎样去掉面包屑导航里的隐藏栏目

帝国cms有隐藏栏目的功能,但隐藏栏目的文章如果展示,面包屑导航里会带上被隐...

1 513
帝国cms自定义页面为什么无法调用描述和关键词?
帝国cms自定义页面为什么无法调用描述和关键词?

帝国cms自定义页面常用于制作一些相对简单的页面,但如果注意过页面tdk,会发现...

0 269
随机帝国CMS开发教程
帝国CMS后台怎样将TAGS从选项设置移到基本信息里面?
帝国CMS后台怎样将TAGS从选项设置移到基本信息里面?

在帝国cms后台添加tag时,往往需要点击选项设置才能配置tag信息,操作较为不便...

3 377
帝国cms怎样在发布文章后自动生成目录
帝国cms怎样在发布文章后自动生成目录

文章如果带有目录,可以让用户在浏览文章时对文章结构一目了然,对于用户体验提...

9 1352
帝国cms无法加载360站长平台的js推送代码怎么办?
帝国cms无法加载360站长平台的js推送代码怎么办?

如果直接在帝国cms模板中插入360推送代码,会发现在插入360推送代码后,无法正...

7 505
帝国CMS怎样开发用户访问页面后自动生成html?
帝国CMS怎样开发用户访问页面后自动生成html?

帝国cms程序虽然已经效率很高,但如果数据量较大,如超过20万,那么不管模板如何...

0 284
帝国cms静态页中如何获取php设置的cookie值?
帝国cms静态页中如何获取php设置的cookie值?

帝国cms的前台页面,是生成的静态文件,如果想要直接获取cookie,或是直接生成页...

3 481
帝国cms7.2版本怎样支持https?
帝国cms7.2版本怎样支持https?

帝国cms7.2默认是不支持https的,开启https时,7.2及以下版本会出现后台空白的...

1 391
怎样实现帝国CMS验证码无刷新显示?
怎样实现帝国CMS验证码无刷新显示?

这个蜘蛛爬虫、恶意广告横行的年代,任何涉及到信息反馈的页面不加入验证码就...

1 368
帝国cms会员中心怎样调用我提交的反馈历史记录?
帝国cms会员中心怎样调用我提交的反馈历史记录?

帝国cms信息反馈表非常好用,通过合理开发信息反馈功能,我么可以实现用户留言...

1 235
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入