小李SEO博客

网站优化服务

帝国CMS内容页调用TAG的5种方法!包括PHP和灵动还有样式改造!




方法1、
调用10条当前tag
[showtags]'selfinfo',10,0,'',0,'',' ',0,'','tagname'[/showtags]


方法2、
内容页调用tag,按tagname调用

<div class="tagsline">Tags:<? $a="$navinfor[infotags]";
$str=str_replace(',', ',', $a);
$tag='';
$t= explode(",", $str);

for($i=0;$i<count($t);$i++)
{
if($t[$i])
{
$tagslink="[!--news.url--]e/tags/?tagname=".urlencode($t[$i])."&tempid=1";
$tag.="<a href='$tagslink' target='_blank'>".$t[$i]."</a> ";
}
}
echo $tag;
?>
</div>




或,按tagname调用


<?php
$fr=$empire->fetch1("select infotags from {$dbtbpre}ecms_news_data_{$navinfor[stb]} where id='$navinfor[id]'");
$infotags=$fr['infotags'];//这个就是infotags字段内容
$tag='';
$t=explode(',',$infotags);//去逗号
$d=count($t);
for($i=0;$i<count($t);$i++)
{
if($t[$i])
{
$tagslink="[!--news.url--]e/tags/?tagname=".urlencode($t[$i])."&tempid=1";
$tag.="<a href='$tagslink' target='_blank'>".$t[$i]."</a> ";
}
}
echo $tag;
?>


或,按id调用


<?
$tbname=$class_r[$navinfor['classid']]['tbname'];
$ftbname=$dbtbpre."ecms_".$tbname."_data_".$navinfor['stb'];
$hlt = $empire->fetch1("select infotags from {$ftbname} where id='$navinfor[id]'");
$a=$hlt[infotags];
$str=str_replace(',', ',', $a);
$tag='';
$t= explode(",", $str);

for($i=0;$i<count($t);$i++)
{
if($t[$i])
{ $datar=$empire->fetch1("select tagid from {$dbtbpre}enewstags where tagname='$t[$i]' limit 1");
$tagslink="[!--news.url--]e/tags/?tagid=".$datar[tagid]."";
$tag.="<a href='$tagslink' target='_blank'>".$t[$i]."</a> ";
}
}
echo $tag;
?>


注释:

限制数量,把$i<count($t)修改为$i<count($t)&&$i<限制数量


mid=1数据模型id tempid=1模型的模板id orderby排列方式 classid=34栏目id &line=5调用条数

如:上面的 &tempid=1

---------------------------------------------------------------------------------------------------------------
方法3、tags标签实现多颜色样式
<?php
$ecms_bq_sql=sys_ReturnEcmsLoopBq("select * from [!db.pre!]enewstagsdata where classid='$navinfor[classid]' and id='$navinfor[id]' order by tagid",10,24,0);
$bqno=0;
while($bqr=$empire->fetch($ecms_bq_sql))
{
$bqsr=sys_ReturnEcmsLoopStext($bqr);
$bqno++;
?>

<?php
$ecms_bq_sql2=sys_ReturnEcmsLoopBq("select * from [!db.pre!]enewstags where tagid='$bqr[tagid]' order by tagid",1,24,0);
$bqno2=0;
while($bqr2=$empire->fetch($ecms_bq_sql2))
{
$bqsr2=sys_ReturnEcmsLoopStext($bqr2);
$bqno2++;
?>

<a class="tag-<?=$bqno?>" href="<?=$public_r[newsurl]?>e/tags/?tagname=<?=$bqr2['tagname']?>&tempid=1"><?=$bqr2[tagname]?></a>

<?php
}
}
?>

接着在css中定义标签的样式,这个可以自己定义。
.tag-1{background:#ff7094;}
.tag-2{background:#94b770;}
.tag-3{background:#db94ff;}
.tag-4{background:#399;}
.tag-5{background:#f60;}


注释:mid=1数据模型id tempid=1模型的模板id orderby排列方式 classid=34栏目id

如:上面的 &tempid=1

---------------------------------------------------------------------------------------------------------------
方法4、

[e:loop={"select a.*,b.* from [!db.pre!]enewstags a LEFT JOIN [!db.pre!]enewstagsdata b ON a.tagid=b.tagid where b.classid='$navinfor[classid]' and b.id='$navinfor[id]' group by b.tagid order by a.num desc limit 100",0,24,0}]
<a href='<?=$public_r['newsurl']?>e/tags/?tagname=<?=$bqr['tagname']?>' title='<?=$bqr['num']?>个'><?=$bqr['tagname']?>(<?=$bqr['num']?>)</a>
[/e:loop]

---------------------------------------------------------------------------------------------------------------
方法5、
<?php
$tsql=$empire->query("select * from {$dbtbpre}enewstagsdata where id='$navinfor[id]'order by id asc limit 7");
while($tr=$empire->fetch($tsql)){
$tag=$empire->fetch1("select * from {$dbtbpre}enewstags where tagid='$tr[tagid]' limit 1");
?>
<span><a class="tag" href="<?=$public_r[newsurl]?>e/tags/?tagname=<?=$tag['tagname']?>"><?=$tag[tagname]?></a></span>&nbsp;
<?}?>

方法6.(网友提供,感谢)
<?php
$tbname="news"; //“news”为新闻数据表名称
$ftbname=$dbtbpre."ecms_".$tbname."_data_".$navinfor['stb'];
$hlt = $empire->fetch1("select infotags from {$ftbname} where id='$navinfor[id]'");
$keyr=explode(',',$hlt[infotags]);
for($i=0;$i<count($keyr);$i++)
{
echo '<a href="'.$public_r[newsurl].'e/tags/?tagname='.$keyr[$i].'" target=_blank>'.$keyr[$i].'</a>&nbsp;&nbsp;';
}
?>



<?php
$fr=$empire->fetch1("select infotags from {$dbtbpre}ecms_news_data_{$navinfor[stb]} where id='$navinfor[id]'");
$keyr=explode(',',$fr[infotags]);
for($i=0;$i<count($keyr);$i++)
{
echo '<a href="'.$public_r[newsurl].'e/tags/?tagname='.$keyr[$i].'" target=_blank>'.$keyr[$i].'</a>&nbsp;&nbsp;';
}
?>



<?php
$fr=$empire->fetch1("select infotags from {$dbtbpre}ecms_news_data_{$navinfor[stb]} where id='$navinfor[id]'");
$infotags=$fr['infotags'];
$r_tag=explode(",",$infotags);
for($i=0;$i<count($r_tag);$i++){
if($r_tag[$i]){
$tagslink=$public_r[newsurl]."e/tags/?tagname=".urlencode($r_tag[$i]);
$tags.="<a class='tag-link19' href='$tagslink' target='_blank' rel='tag'>".$r_tag[$i]."</a>";
}
}
?>
tag:<?=$tags?>

注释:限制数量,把$i<count($keyr)修改为$i<count($keyr)&&$i<限制数量


上一篇:帝国CMS系统收不到邮件的解决办法 下一篇:帝国CMS单条信息指定不同内容模板(限动态)
相关帝国cms文章阅读
  • 帝国CMS如何用灵动标签调用副表字段内容?

    15、如何用灵动标签调用副表字段内容? 原理:在灵动标签循环内用SQL读取副表内容。下面以读取新闻副表中的newstext字段为例: [e:loop={0,1,3,0}] ?php $fr=$empire-fetch1(select newstext from {$dbtbpre}ecms_new...

  • 帝国CMS灵动标签使用esub/substr截取前面(或后面)两个字符(或多个字符)

    ①、帝国网站 ?=esub($bqr[classname],4)? 显示是帝国 (这是灵动标签默认的截取标签字段esub), ②、如果显示网站两字用php的substr函数:?=substr($bqr[classname],2,2)? 实例1、截取帝国网站前面的帝国两...

  • 帝国cms列表页获取父级栏目地址以及获取父级栏目下所有子栏目

    两种方法,推荐第二种! 第一种方法 div class=catleader minicat ul class=sub-category ?php $bclassid = $class_r[$GLOBALS[navclassid]][bclassid]; //获取当前父栏目ID $cr[classid]=$class_r[$GLOBALS[navclassid]][bclassid]; $bclassurl...

  • EcmsToSendMail()帝国CMS发送邮件函数

    EcmsToSendMail() 函数:EcmsToSendMail() 功能:帝国CMS邮件发送函数 位置:帝国CMS SendEmail.inc.php 版本:6.5 EcmsToSendMail($email,$subject,$content); $emai: 邮件地址可为数组 $subject: 邮件标题 $content: 邮件内容 说...

  • 帝国cms会员注册时加入问答验证

    此教程适用于帝国CMS(7.0/7.2/7.5)版本,较低版本帝国CMS请参考如链接修改:https://www.moyublog.com/notes/684.html 修改文件/e/member/doaction.php 找到: elseif($enews==register)//注册 { register($_POST); } 修改为:...

  • 帝国CMS如何修改默认的列表模版分页样式&amp;#091;!--show.listpage--]标签说明

    我们在自己设计网站列表页面或者仿别人的列表页面的时候可能会感觉帝国CMS默认的列表页分页样式不是很好看,不过经过我最记得使用发现,这个分页样式可能不够好看,但是功能性上是非...

  • 帝国CMS整合Discuz!7.2方法,完整双向同步登录退出

    用帝国CMS6.6整合安装Discuz!7.2。为了便于以后的升级扩展。决定整合ucenter1.5 首先安装 Discuz_7.2_FULL_SC_GBK也就是已经包含ucenter1.5的Discuz7.2版本。上传到空间执行安装完成便已整合安装好 Discuz+uc...

  • 帝国CMS首页调用已注册会员人数和最新会员名称

    首页调用已注册会员人数和最新会员名称 ?php $members=$empire-gettotal(select count(*) as total from {$dbtbpre}enewsmember);$newmember=$empire-fetch1(select userid,username from phome_enewsmember order by userid desc limit 1);? 会员总...

  • 帝国CMS如果信息为当天就加New标志

    本功能实现调用信息时候如果是当天发布的最新信息显示New标志图片。 ul [e:loop={栏目ID,显示条数,操作类型,只显示有标题图片}] ? $newimg=; if(date(m-d,$bqr[truetime]) == date(m-d)) { $newimg = img src='New图片...

  • 帝国CMS虚拟主机伪静态设置.htaccess

    帝国CMS建议直接生成静态页,但有时候也确实希望伪静态,这里以 帝国CMS7.0为例。PHP虚拟主机下设置伪静态: 1、确认空间支持伪静态,有些空间商的空间是需要手动开启伪静态功能的。 2、后...

  • 帝国cms模板隔行变色使用灵动标签实现方法

    小李网络公司介绍帝国cms模板隔行变色使用灵动标签实现方法知识,包括帝国cms标签调用大全帝国cms标签帝国下载站模板帝国cms标签位置帝国网站模板帝国cms首页tags帝国cms描述帝国cms通过tags....

  • 帝国CMS几个函数RepPostVar,RepPostVar2,RepPostStr,RepPostStr2的用法

    (1)、数字型变量可以用(int)或intval函数处理,例子: $page=(int)$_GET[page]; 或 $page=intval($_GET[page]); (2)、带小数点的数字型变量可以用(float)或floatval函数处理,例子: $money=(float)$money; 或 $money=float...

SEO公司排名
 
QQ在线咨询
SEM竞价推广
137-1296-7640
SEO优化外包
137-1296-7640