主页 > 编程资料 > 帝国CMS >
发布时间:2015-09-26 作者:网络 阅读:246次

帝国cms官方论坛里提供过方法,只是不适用在帝国cms7.0了

=============这是帝国cms7.0 之前版本的方法=============

演示:





标签下载:

http://www.phome.net/ecms47/bq/echoinfozt/echoinfozt.zip

********************  标签导入步骤  ********************

登陆后台->“模板管理”->“管理标签”->“导入标签”:

说明:标签文件选择压缩包里的:“echoinfozt1199799878.bq”
(记得导入后将函数内容复制到e/class/userfun.php文件里)


********************  标签使用  ********************

在内容模板中加上“[echoinfozt]0[/echoinfozt]”此调用标签。

这个/e/class/userfun.php里的代码可以打开看下


复制代码代码如下:
function user_EchoInfoZtBq($ecms=0){
global $class_zr,$navinfor;
if(empty($navinfor[ztid])||$navinfor[ztid]=='|')
{
return '';
}
$zt='';
$r=explode('|',$navinfor[ztid]);
$c=count($r);
for($i=1;$i<$c-1;$i++)
{
$ztid=$r[$i];//专题ID
$ztname=$class_zr[$ztid][ztname];
if($ztname)
{
$zr[ztid]=$ztid;
$ztlink=sys_ReturnBqZtname($zr);//专题链接
$zt.="".$class_zr[$r[$i]][ztname].",";
}
}
if($zt)
{
echo substr($zt,0,strlen($zt)-1);

}
}

===================帝国cms7.0调用信息所属专题================

但是很不幸,到了帝国cms7.0 上述方法已经不能用了,因为信息表里已经没有ztid这个字段,之前是根据这个ztid去读取专题的缓存文件

来获取专题名以及专题链接

在帝国cms7.0 里面专题信息已经被放到 _enewsztinfo 这个表里

要调用的话,势必要再读取一次数据表了

下面是我写的代码,可以直接放在内容模板里使用


复制代码代码如下:
$sql=$empire->query("SELECT DISTINCT ztid FROM {$dbtbpre}enewsztinfo where id='$navinfor[id]' and classid=$navinfor[classid] ;");
while($r=$empire->fetch($sql))
{
$ztid=$r[ztid];
$ztname=$class_zr[$ztid][ztname];
if($ztname)
{
$zr[ztid]=$ztid;
$ztlink=sys_ReturnBqZtname($zr);//专题链接
$zt.="".$ztname.",";
}
}
if($zt)$zt= substr($zt,0,strlen($zt)-1);

 $zt就是带链接的专题信息,用即可显示了

关键字词: