当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国CMS模板内容页怎么用TAG调用相关文章

3年前 (2022-10-21)帝国CMS8478

帝国cms模板内容页现用TAG调用相关文章的方法,一起来看看怎么操作吧:

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

  一、自定义函数

  自定义函数user_OtherLink ,将此函数放入 e\class\userfun.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)?>

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://www.blueboss.cn/p/265.shtml

“帝国CMS模板内容页怎么用TAG调用相关文章” 的相关文章

IIS环境下开启TAG伪静态帝国CMS的中文TAG提示此TAG不存在

IIS环境下开启TAG伪静态帝国CMS的中文TAG提示此TAG不存在

用帝国cms制作网站或者搬家后,IIS环境下开启TAG伪静态,帝国CMS的中文TAG提示此TAG不存在,是什么问题呢?解决方案: 打开/e/tags/index.php文件 查找: $tagname=RepPostVar($_GET['tagname']); 修改为 $tagname=RepPo...

帝国CMS默认的信息提示页修改样式

帝国CMS默认的信息提示页修改样式

帝国CMS默认的信息提示界面有点丑,想要修改怎么办?很简单,下面帝国cms模板网就来为大家分享: 修改文件: e/message/index.php 提示文字要改语言包 e/data/language/gb/pub/q_message.php OK!搞定!大家赶紧去试试吧!...

帝国CMS多值字段如何调用多值字段最新增加的一行内容

帝国CMS多值字段如何调用多值字段最新增加的一行内容

帝国cms模板里面的多值字段怎么调用呢? 多值字段调用如下: <?php $morefr=explode('||||||',$navinfor[字段名]); $mfcount=count($morefr); for($mfi=0;$mfi<$mfcount;$mfi++) { $mor...

帝国CMS用PHP获取任意栏目ID

帝国CMS用PHP获取任意栏目ID

帝国cms模板中,如果栏目层级比较深,而且又要在栏目里面获取上级栏目或者下级栏目的一些数据时,获取到该栏目ID,上级栏目,上上级栏目,直到顶级栏目ID就很关键了  具体方法如下: 一,在模板页面,通过PHP先获取当前栏目的ID: <?php     $a=$GLOBALS[navclassi...

帝国CMS用灵动标签调用简介截取字数

帝国CMS用灵动标签调用简介截取字数

帝国CMS灵动标签调用文章缩略图的标签写法: <?=$bqr[smalltext]?> <?=esub($bqr[smalltext],50)?> (上面标签注释:该标签可限制内容简介显示的字数,举例中的50表示显示50个字符,算城成是汉字就是25个字,大家可以根据自己的...

帝国CMS灵动标签loop调用TAG标签

帝国CMS灵动标签loop调用TAG标签

帝国CMS怎么用灵动标签调用TAG标签呢 代码如下: [e:loop={0,10,3,1,'','newstime DESC'}] <?php $newbook1=$empire->query("select * from phome_ecms_news_data_1 where id...