在默认情况下,帝国CMS tags 标签伪静态,是以标签名称显示的,但是好像很多网站长不喜欢,或许是因为不利于SEO优化,那么我们如何实现帝国CMS tags标签以ID伪静态以及tags标签分页也伪静态呢?下面IT备忘录小编就以帝国CMS 7.5修改做为演示分享给大家。
方法步骤:
帝国cms默认的tags页面伪静态设置很简单。设置伪静态后,url链接如下:
-
http://www.xxxx.com/tags-测试-0.html
修改之后的效果:
-
http://www.xxxx.com/tags-1-0.html
实现方法:
1、打开/e/class/connect.php文件,查找(大约在1714行):
-
//返回TAGS列表伪静态
-
function 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;
-
}
2、/e/tags/index.php文件,找到如下代码(大约在227行)将其注释,不用。
-
if(!empty($public_r['rewritetags'])&&empty($add)&&($search=='&tagname='.$tagname.'&line='.$public_r['tagslistnum'].'&tempid='.$public_r['tagstempid']||$search=='&tagid='.$tagid.'&line='.$public_r['tagslistnum'].'&tempid='.$public_r['tagstempid'])&&!$myorder)
-
{
再往下继续找到如下代码,也将其注释,不用。
-
}
-
else
-
{
-
$listpage=page1($num,$line,$page_line,$start,$page,$search);//分页
-
}
如下图所示操作:
3、在后台设置伪静态规则
后台——系统——系统设置——伪静态参数设置——TAGS信息列表页:点击默认,如下图:
4、给网站添加伪静态规则。
Apache环境下的伪静态规则如下:
-
RewriteEngine OnRewriteRule ^tags-(.*)-(.*)$ e/tags/index.php?tagid=$1&page=$2
Nginx环境下的伪静态规则如下:
-
rewrite ^/tags-(.*)-(.*)$ /e/tags/index.php?tagid=$1&page=$2;
或
-
rewrite ^([^\.]*)/tags-(.+?)-(.+?)\.html$ $1/e/tags/index.php?tagid=$2&page=$3 last;
5、最后打开有tags标签的列表或内容页即可看到最终效果。