分享好友 教程首页 教程搜索 频道列表

DESTOON伪静态地址空值优化

2020-10-29 11:449170
+关注29
核心提示:目前的处理方式:index.php?catid=0areaid=0kw=墙体广告的伪静态处理结果为index-h...

目前的处理方式:index.php?catid=0&areaid=0&kw=墙体广告 的伪静态处理结果为

index-htm-kw-墙体广告-catid-0-areaid-0.html

但是这种格式不是特别好,因为如果值为0或者值为空的时候, 表示值不存在,如果是多重条件的组合,会生成一长串空值地址:

现在增加一个方法

把类似这样的长网址sell/search-htm-list-0-kw-墙体广告-catid-0-areaid-0.html  简化成 search-htm-kw-墙体广告.html

rewrite是原方法,在方法体中增加一个getUrlKeyValue($url)来处理


在/include/global.func.php 有个rewirte函数来处理



function rewrite($url, $encode = 0) {
    if(!RE_WRITE) return $url;
    if(RE_WRITE == 1 && strpos($url, 'search.php') !== false) return $url;
    if(strpos($url, '.php?') === false || strpos($url, '=') === false) return $url;
    $url= getUrlKeyValue($url);//这里增加一个过滤方法解决值为空或0的问题
    $url = str_replace(array('+', '-'), array('%20', '%20'), $url);
    $url = str_replace(array('.php?', '&', '='), array('-htm-', '-', '-'), $url).'.html';
    return $url;
}


在本文件最后加上一个函数


function getUrlKeyValue($url){
    $result = '';
    $mr = preg_match_all('/(\?|&)(.+?)=([^&?]*)/i', $url, $matchs);
    if ($mr !== false) {
        for ($i = 0; $i < $mr; $i++) { if($matchs[3][$i]) { $result.=$matchs[2][$i].'='.$matchs[3][$i].'&'; } } } $rootStr = substr($url,0,strpos($url, '.php?')+5);
    $result = $rootStr.rtrim($result,'&');
    return $result;
}



最终2处效果如图:


本文标签: #伪静态 #url优化 #搜索 #分类
免责声明:凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
生成海报
您可能在找更多

nginx php 后缀名,nginx去掉php后缀名的方法

    给大家分享一下nginx去掉php后缀名的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!nginx去掉php后缀名的方法:首先打开相应的代码文件;然后添加代码语句为

小黑 宝塔面板 12022-10-10

DESTOON7.0搜索关键词记录推送熊掌号+普通主动推送

    为了seo需要,把大量的搜索关键词记录推送熊掌号达到更快的收录。而且网上没有人分享这方便,所以抽空自己写了一个,因为我自己搜索伪静态开启了拼音伪静态,如果你们默认是官方的中文伪静态就把我拼音的伪静态控制关闭即可!新建一个PHP文件:?php//百度主动推送三项合一功能//作者:68喜//功能模块:搜索关键词记录推送熊掌号当天推送+熊掌号历史推送+普通//主动推送//错误显示屏蔽error_reporting(E_ERROR | E_WARNING | E_PARSE);require './co

网络转载 开发技术2020-02-09

DESTOON详情页url根目录化以模块目录名区分

    详情页url根目录化,为了不冲突,教程就以模块目录名去分辨网址原网址 www.***.com/sell/show-100.html改变后形成的最终效果为 www.***.com/sell-100.html

小黑 开发技术 22019-08-21

下一篇
我来说两句
抢沙发