加入收藏 | 设为主页 | 我要投稿 | RSS中药方rss
中药方大全小图标
您当时的方位:主页 > 其他 > 网站日记

帝国cms中列表页调用信息tags

提示: 手机抄药方--选中文字可生成二维码  来历:原创  作者:18luck新利网站主页

在帝国的cm的列表页中怎么调用信息tags呢?

在内容页,jiuhecai能够运用tags标签:[showtags]'selfinfo',10,0,'',0,'',' ',0,'','tagname'[/showtags]来调用 当时信息中的tags而且带衔接。

要是在列表页中也能够这样调用就漂亮了,然并卵。列表页下部不支撑标签。那就只好写代码了。

有以下考虑:

  1. tags信息在副表中,要从数据库中调用;

  2. 最好仍是用帝国的原生tags函数,这样伪静态什么的包容性好些。

第一个问题:

$tbname=$class_r[$r[classid]][tbname];
$fb=$r[stb];
$ftbname=$dbtbpre."ecms_".$tbname."_data_".$fb;
$jhcr['infotags'] = $empire->gettotal("select infotags as total  from $ftbname where id='$r[id]'");
$GLOBALS['navinfor']=$jhcr;

第二个问题

ob_start();
sys_eshowtags('selfinfo',10,0,'',0,'',' ',0,'','tagname');
$tags=ob_get_clean();
$listtemp='<li><a href="[!--titleurl--]" title="[!--oldtitle--]">[!--title--]</a> 
<span style="float:right">Tags:  <i>'.$tags.'</i></span></li>';

阐明下,showtags标签对应的函数便是

//显现TAGS
function sys_eShowTags($cid,$num=0,$line=0,$order='',$isgood='',$isgoodshow='',$showjg='',$shownum=0,$cs='',$vartype=''){
	global $empire,$dbtbpre,$public_r,$navinfor;
	$str='';
	if(empty($showjg))
	{
		$showjg='   ';
	}
	$ln=0;
	if($cid=='selfinfo')
	{
		if(empty($navinfor['infotags']))
		{
			return '';
		}
		$jg='';
		$r=explode(',',$navinfor['infotags']);
		$count=count($r);
		for($i=0;$i<$count;$i++)
		{
			$ln++;
			$br='';
			if($line)
			{
				if($ln%$line==0)
				{
					$br='<br>';
				}
			}
			//TAGSID
			if($vartype=='tagid')
			{
				$tagr=$empire->fetch1("select tagid from {$dbtbpre}enewstags where tagname='".RepPostVar($r[$i])."' limit 1");
			}
			if(empty($cs)&&!empty($public_r['rewritetags']))
			{
				if($vartype=='tagid')
				{
					$rewriter=eReturnRewriteTagsUrl($tagr['tagid'],'etagid'.$tagr['tagid'],1);
					$tagsurl=$rewriter['pageurl'];
				}
				else
				{
					$rewriter=eReturnRewriteTagsUrl(0,$r[$i],1);
					$tagsurl=$rewriter['pageurl'];
				}
			}
			else
			{
				$tagsurl=$public_r[newsurl].'e/tags/?'.($vartype=='tagid'?'tagid='.$tagr['tagid']:'tagname='.urlencode($r[$i])).$cs;
			}
			$str.=$jg.'<a href="'.$tagsurl.'" target="_blank">'.$r[$i].'</a>'.$br;
			$jg=$br?'':$showjg;
		}
	}
	else
	{
		$and='';
		$where='';
		if($cid)
		{
			$where=strstr($cid,',')?"cid in ($cid)":"cid='$cid'";
			$and=' and ';
		}
		if($isgood)
		{
			$where.=$and.'isgood=1';
		}
		if($where)
		{
			$where=' where '.$where;
		}
		$order=$order?' '.$order:' tagid desc';
		$limit='';
		if($num)
		{
			$limit=' limit '.$num;
		}
		//引荐标红
		$gfont1='';
		$gfont2='';
		if($isgoodshow)
		{
			if(strstr($isgoodshow,'r'))
			{
				$gfont1='<font color="red">';
				$gfont2='</font>';
			}
			if(strstr($isgoodshow,'s'))
			{
				$gfont1=$gfont1.'<b>';
				$gfont2='</b>'.$gfont2;
			}
		}
		$jg='';
		$snum='';
		$sql=$empire->query("select tagid,tagname,num,isgood from {$dbtbpre}enewstags".$where." order by".$order.$limit);
		while($r=$empire->fetch($sql))
		{
			if($shownum)
			{
				$snum='('.$r[num].')';
			}
			$font1='';
			$font2='';
			if($isgoodshow&&$r[isgood])
			{
				$font1=$gfont1;
				$font2=$gfont2;
			}
			$ln++;
			$br='';
			if($line)
			{
				if($ln%$line==0)
				{
					$br='<br>';
				}
			}
			if(empty($cs)&&!empty($public_r['rewritetags']))
			{
				$rewriter=eReturnRewriteTagsUrl($r['tagid'],$vartype=='tagid'?'etagid'.$r['tagid']:$r['tagname'],1);
				$tagsurl=$rewriter['pageurl'];
			}
			else
			{
				$tagsurl=$public_r[newsurl].'e/tags/?'.($vartype=='tagid'?'tagid='.$r[tagid]:'tagname='.urlencode($r[tagname])).$cs;
			}
			$str.=$jg.'<a href="'.$tagsurl.'" target="_blank">'.$font1.$r[tagname].$snum.$font2.'</a>'.$br;
			$jg=$br?'':$showjg;
		}
	}
	echo $str;
}

可是,这个函数帝国源码包装过度,直接echo了成果,而不是函数回来值,无法只好ob_start()阻拦后获取。还有便是这个函数调用了global $navinfor,那只好在调用前,满意人家的要求了。

最终,勾选运用程序代码后,兼并问题一和问题二中的代码就完成任务了。

tags: 帝国cms tags 列表页
回来顶部
引荐资讯
视频:田纪钧讲关节不痛的隐秘、膝关节拉筋法
视频:田纪钧讲关节不
白露到了,你还好吗?
白露到了,你还好吗?
尿疗与断食
尿疗与断食
给风疹重复发生女孩的药方(组图)
给风疹重复发生女孩的
相关文章
栏目更新
栏目抢手
  1. 帝国cms7.2后台信息列表页批量增加tags
  2. 帝国cms百度自动推送插件支撑分页推送
  3. 帝国cms之批量替换字段值
  4. 怎么制止内容要害字替换ALT和A标签中的要害
  5. 帝国cms7.2改用百度编辑器
  6. 帝国cms插件大全
  7. 帝国cms获取当时页的地址
  8. 【帝国cms插件】之三级联动+伪静态
  9. 帝国cms在模板中修正字段值
  10. 显现二维码