帝国CMS列表页调用文章tags标签的两种方法

  • 2015-03-25
  • 4414

列表页调用tag的方法有两种,一种是切割副表的infotags字段,第二种种是从phome_enewstagsdata表中提取。如果采用tagid或tag静态化,则推荐使用第二种方法,效率更高。如果采用tagname的动态链接方式,可以采用第一种方法。

第一种方法:切割infotags字段

/* 列表页显示tag 开始*/
$tagstr='';
$infotags_r=explode(',',$r['infotags']);
$tagscount=count($infotags_r);
for($i=0;$i<$tagscount;$i++){
$tagname=$infotags_r[$i];
if(empty($tagname)){
continue;
}

//tagname的动态 或 伪静态 时的链接,采用以下1行代码
/* $tagslink=eReturnRewriteTagsUrl(0,$tagname);*/

//tagid式的动态链接,采用以下6行代码
$tt=$empire->fetch1("select * from {$dbtbpre}enewstags where tagname='".$tagname."' limit 1");
if(!$tt['tagid']){
continue;
}else{
$tagslink=$public_r['newsurl'].'e/tags/?tagid='.$tagid;;
}

//返回单独一个tag的代码
$tagstr.='<a title="'.$tagname.'" target="_blank" href="'.$tagslink.'">'.$tagname.'</a>';
}
/*结束*/

$listtemp='其它代码'.$tagstr.'其它代码';

第二种方法:从phome_enewstagsdata表中提取

/* 列表页显示tag 开始*/
$tagstr='';
$tsql=$empire->query("select tagid from {$dbtbpre}enewstagsdata where id='$r[id]' and classid='$r[classid]' ");
while($tr=$empire->fetch($tsql)){
$tt=$empire->fetch1("select * from {$dbtbpre}enewstags where tagid=".$tr['tagid']." limit 1");
if(!$tt['tagid']){
continue;
}else{
//tagname的动态 或 伪静态 时的链接,采用以下1行代码
//$tagslink=eReturnRewriteTagsUrl(0,$tt['tagname'],1);

//tagid式的动态链接,采用以下1行代码
$tagslink=$public_r['newsurl'].'e/tags/?tagid='.$tt['tagid'];

$tagstr.='<a title="'.$tagname.'" target="_blank" href="'.$tagslink.'">'.$tt['tagname'].'</a>';
}
/*结束*/


$listtemp='其它代码'.$tagstr.'其它代码';

说明:

1、代码中的tag链接都有2种方式,可以根据实际情况进行选择。

2、以上代码放入列表内容模板(list.var) ,必须开启使用程序代码。

成都律品科技有限公司专注律师互联网营销技术服务,创始人员2009年开始从事律师行业互联网技术开发、营销运营工作已十年,2018年公司正式成立,不断探索律师行业服务需求,致力于为律师行业提供透明、优质的服务,现已为全国多家律师事务所、律师团队提供互联网技术及营销支持。

在线咨询
  • 152-0832-9147

  • 105991110

全时在线,如未回复请留下联系方式

微信咨询