下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国CMS标签伪静态美化为/tags-100-0.html的形式(去掉etagid)

708 2021-01-30 10:52:13

收藏

简述

修改系统文件、复制调用代码、配置伪静态参数,最终实现tag伪静态。

帝国cms简单修改实现TAGS以TAGID的方式伪静态,修改后的地址形式如:https://xzo.com.cn/tags-100-0.html  (数字100为TAG 的 ID),去除了url中的etagid字样。

帝国CMS标签伪静态美化为tags-100-0.html的形式(去掉etagid)

第一步、打开/e/class/connect.php文件,找到
 

function eReturnRewriteTagsUrl($tagid,$tagname,$ecms=0){
    global $public_r;
    $tagname=urlencode($tagname);
    if(empty($public_r['rewritetags']))
    {
        $r['pageurl']=$public_r['newsurl']."e/tags/?tagname=".$tagname;
        $r['rewrite']=0;
    }
    else
    {
        if($ecms==1)
        {
            $r['pageurl']=$public_r['newsurl'].str_replace(array('[!--tagname--]','[!--page--]'),array($tagname,0),$public_r['rewritetags']);
        }
        else
        {
            $r['pageurl']=$public_r['newsurl'].str_replace('[!--tagname--]',$tagname,$public_r['rewritetags']);
        }
        $r['rewrite']=1;
    }
    return $r;
}


此函数整个修改为:
 

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;
}

第二步、打开/e/tags/index.php文件

找到 

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)
{
    //伪静态
    $pagefunr=eReturnRewriteTagsUrl($tagid,$tagr['tagid']?$tagname:'etagid'.$tagid,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);//分页
}

修改为:
 

/*
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)
{
*/
    //伪静态
    $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);//分页
}
*/

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

设置成:

tags-[!--tagname--]-[!--page--].html


第四步:内容模板tag调用

[showtags]'selfinfo',0,0,'',0,'',' ',0,'','tagid'[/showtags]


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

apache的伪静态规则如下:

RewriteRule ^tags-(.*)-(.*)$  e/tags/index.php?tagid=$1&page=$2
nginx伪静态规则如下:
rewrite ^/tags-([0-9]+)-([0-9]+).html$ /e/tags/index.php?tagid=$1&page=$2 last;

其它类型服务器请对照此自行修改。

操作完毕后,伪静态链接就去除了etagid字样,变成类似https://xzo.com.cn/tags-1-0.html的形式。动态/伪静态站可直接查看相关内容页,静态站刷新对应的内容页即可看到效果。
 

提示

使用本方式对伪静态tag进行美化后,强制要求全站内容模板调用tags,如未调用tags,相关页面将变成白屏。

本文地址:https://xzo.com.cn/develop/empire/617.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
网上下载的帝国CMS免费模板,怎样防止后门与挂马?
网上下载的帝国CMS免费模板,怎样防止后门与挂马?

帝国CMS是一款相当安全的开源cms程序,如果使用规范的模板,一般是不会被挂马的...

7 1086
帝国cms误删了已收录的文章要怎么恢复数据?
帝国cms误删了已收录的文章要怎么恢复数据?

客户站点由于员工操作失误,直接删除了20篇文章。如果有定期备份,那恢复数据即...

0 484
帝国cms怎样判断当前页面为首页?
帝国cms怎样判断当前页面为首页?

在帝国cms开发时,我们经常要给栏目配置高亮效果。栏目高亮判断循环的id等于...

0 635
帝国cms刷新生成信息内容页时总是出现502怎么办?
帝国cms刷新生成信息内容页时总是出现502怎么办?

一般而言,帝国cms出现502错误的原因在于数据量较为庞大,而模板又不够高效,最终...

61 1132
帝国cms把自己ip禁止访问了怎么办?
帝国cms把自己ip禁止访问了怎么办?

帝国cms有禁止ip访问的功能,但如果不小心禁止了自己的ip,或是操作失误导致所...

0 708
帝国cms提取正文里的3张图片做缩略图
帝国cms提取正文里的3张图片做缩略图

帝国cms怎样提取正文里的3张图片做缩略图呢?...

0 675
帝国cms 使用download.js下载视频文件
帝国cms 使用download.js下载视频文件

视频文件默认会被pc浏览器直接打开,此时download属性也同样无效。那么,要怎样...

0 481
高危预警:帝国cms for Excel批量导入插件未验证后台权限
高危预警:帝国cms for Excel批量导入插件未验证后台权限

帝国cms for Excel批量导入插件高危预警:未验证后台权限 。...

3 185
推荐插件
帝国cms网站会员登录与退出历史记录日志插件
帝国cms网站会员登录与退出历史记录日志插件

帝国cms默认只有上次登录时间与ip,没有一个记录清单,所以今天,我们分享这个帝...

0 407
帝国cms百度文字识别ocr接口对接插件
帝国cms百度文字识别ocr接口对接插件

许多网站会做一些小功能小插件给客户使用以增强用户黏性,比如图片转文字,这种...

0 472
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 460
帝国cms百度AI图像清晰度增强api接口对接插件
帝国cms百度AI图像清晰度增强api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像清晰度增强的功能。经...

0 525
帝国cms智能自动审核按星期几审核指定栏目带推送插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件

采集站的必备资源是自动审核,要做到日收录也离不开定时发布。而本插件的自动...

0 1285
帝国cms批量添加后台用户插件
帝国cms批量添加后台用户插件

使用帝国cms的企业用户、新闻资讯类站点的用户很多,此类站点很多时候需要有...

0 782
帝国cms自动给正文关键词添加tag内链
帝国cms自动给正文关键词添加tag内链

帝国cms有自带的给关键词添加内链功能,但需要手动添加关键词,容易出现疏漏和...

0 841
帝国CMS内网用户静态站点文章访客统计插件
帝国CMS内网用户静态站点文章访客统计插件

本插件适用于内网用户,可查看单篇文章访问者ip地址。如果添加访问者ip组,可查...

0 565
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入