帝国调用html标签,帝国cms实现 tags标签伪静态,tags标签使用ID.html命名

本文详细介绍了如何在帝国CMS中实现tags标签的伪静态,并使用ID.html作为命名规则。首先,需要修改系统文件e/class/connect.php,替换原有函数以支持ID形式的伪静态。接着,修改TAG支持文件e/tags/index.php,调整分页函数。然后,在后台设置tag伪静态为tags-[!--tagid--]-[!--page--].html格式。最后,配置服务器的伪静态规则,如Apache和Nginx。通过这些步骤,成功实现了tags标签的ID伪静态功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

帝国cms实现 tags标签伪静态,tags标签使用ID.html命名,下面是我亲测的,还行。只是有点麻烦要改三个地方。帝国CMS默认的tag伪静态方法是tagname也就是文字方式的,那么怎么实现以tagid数字的形式来实现tag的伪静态呢?

a67fb3f76fa0e9820d429287cd1a9b1a.png

第一步:修改系统文件 e\class\connect.php文件(改前先备份好)

搜索“function eReturnRewriteTagsUrl($tagid,$tagname,$ecms=0){”

找到函数 eReturnRewriteTagsUrl,将此函数删除或注释掉,换成下面的代码:

//返回TAGS列表伪静态 function eReturnRewriteTagsUrl($tagid,$tagname,$ecms=0){ global $public_r,$empire,$dbtbpre; if(!$tagid){ $tagname=RepPostVar($tagname); if(!$tagname) { $r['pageurl']=$public_r['newsurl']; $r['rewrite']=0; return $r; } $tagr=$empire->fetch1("select tagid,num from {$dbtbpre}enewstags where tagname='$tagname' limit 1"); if(!$tagr['tagid']) { $r['pageurl']=$public_r['newsurl']; $r['rewrite']=0; return $r; } $tagid=$tagr['tagid']; } if(empty($public_r['rewritetags'])) { $r['pageurl']=$public_r['newsurl']."e/tags/?tagid=".$tagid; $r['rewrite']=0; } else { if($ecms==1) { $r['pageurl']=$public_r['newsurl'].str_replace(array('[!--tagname--]','[!--page--]'),array($tagid,0),$public_r['rewritetags']); } else { $r['pageurl']=$public_r['newsurl'].str_replace('[!--tagname--]',$tagid,$public_r['rewritetags']); } $r['rewrite']=1; } return $r; }

//返回TAGS列表伪静态

function eReturnRewriteTagsUrl($tagid,$tagname,$ecms=0){

global $public_r,$empire,$dbtbpre;

if(!$tagid){

$tagname=RepPostVar($tagname);

if(!$tagname)

{

$r['pageurl']=$public_r['newsurl'];

$r['rewrite']=0;

return $r;

}

$tagr=$empire->fetch1("select tagid,num from {$dbtbpre}enewstags where tagname='$tagname' limit 1");

if(!$tagr['tagid'])

{

$r['pageurl']=$public_r['newsurl'];

$r['rewrite']=0;

return $r;

}

$tagid=$tagr['tagid'];

}

if(empty($public_r['rewritetags']))

{

$r['pageurl']=$public_r['newsurl']."/tags/".$tagid."/";

$r['rewrite']=0;

}

else

{

if($ecms==1)

{

$r['pageurl']=$public_r['newsurl'].str_replace(array('[!--tagname--]','[!--page--]'),array($tagid,0),$public_r['rewritetags']);

}

else

{

$r['pageurl']=$public_r['newsurl'].str_replace('[!--tagname--]',$tagid,$public_r['rewritetags']);

}

$r['rewrite']=1;

}

return $r;

}

如下图,注意最下面的}是要删掉的

235b52e2e1419845b34269676b9bc2ca.png 

第二步:修改TAG支持文件 e\tags\index.php文件

这里主要是修改分页函数。找到如下所示代码,按照以下代码将原来的部分代码注释掉。

/* if($tagr['tagid']&&empty($add)&&$search=='&tagname='.$tagname.'&line='.$public_r['tagslistnum'].'&tempid='.$public_r['tagstempid']) { */ //伪静态 $pagefunr=eReturnRewriteTagsUrl($tagid,$tagname,0); $pagefunr['repagenum']=0; //分页 if($pagefunr['rewrite']==1) { $listpage=InfoUsePage($num,$line,$page_line,$start,$page,$search,$pagefunr); } else { $listpage=page1($num,$line,$page_line,$start,$page,$search); } /* } else { $listpage=page1($num,$line,$page_line,$start,$page,$search);//分页 } */

如下图,下面的}也是要删掉的

6d1f8cb949aa275ec22aaa53dea7f639.png 

第三步:后台设置tag伪静态

按照默认,设置成:tags-[!--tagname--]-[!--page--].html 即可。

第四步:服务器伪静态规则

apache的伪静态规则如下,其它类型服务器请对照此自行修改:

RewriteRule ^tags-(.*)-(.*)$ e/tags/index.php?tagid=$1&page=$2 Nginx的伪静态规则: rewrite ^/tags-(.*)-(.*)$ /e/tags/index.php?tagid=$1&page=$2;

88083775a9539f684ceaab8e727ff206.png

好了,完工了。帝国cms实现 tags标签伪静态,tags标签使用ID.html命名

标签:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值