感谢作者:jimmy 提供的方案!这种正则过了方法墨鱼亲测可行!
帝国官方结合项如果同一个字段不同值点击两次以上url就会出现重复的参数,当然对功能是没有影响的,感觉不大美观!
优化前:/e/action/ListInfo.php?&classid=19&orderby=psalenum&myorder=1&ph=1&classid=19&pbrand=27&orderby=psalenum&myorder=1&myorder=1
优化后:/e/action/ListInfo.php?classid=19&orderby=psalenum&myorder=1&ph=1&pbrand=27
优化后是不是感觉清爽了很多
优化方法:
在官方的结合项的函数方法echo $allstr;这行代码的前面插入以下代码即可:
//新增代码---jimmy.start-----
preg_match_all ('/<a rel="nofollow noopener noreferrer" href=\&;(.*?)\&;.*?>(.*?)<\/a>/i',$allstr,$matches);
for($i=0;$i<count($matches[1]);$i++){
$url = $matches[1][$i];
$parts = parse_url($url);
$query = explode('&', $parts[query]);
$output=array();
foreach ($query as $key => $value) {
if($value){
$params = explode('=', $value);
if($params[0]){
$output[$params[0]]=urldecode($params[1]);
}
}
}
$newurl = $parts[path].'?'.http_build_query($output);
$allstr = str_replace('rel="nofollow noopener noreferrer" href="'.$url.'"', 'rel="nofollow noopener noreferrer" href="'.$newurl.'"',$allstr);
}
//新增代码---jimmy.end-----
如果有多个结合项,可以把上面的代码放到一个函数里面调用方法就更加简单了,只需把echo $allstr;替换成echo beautifyUrl($allstr);即可
function beautifyUrl($allstr){
//新增代码---jimmy.start-----
preg_match_all ('/<a rel="nofollow noopener noreferrer" href=\&;(.*?)\&;.*?>(.*?)<\/a>/i',$allstr,$matches);
for($i=0;$i<count($matches[1]);$i++){
$url = $matches[1][$i];
$parts = parse_url($url);
$query = explode('&', $parts[query]);
$output=array();
foreach ($query as $key => $value) {
if($value){
$params = explode('=', $value);
if($params[0]){
$output[$params[0]]=urldecode($params[1]);
}
}
}
$newurl = $parts[path].'?'.http_build_query($output);
$allstr = str_replace('rel="nofollow noopener noreferrer" href="'.$url.'"', 'rel="nofollow noopener noreferrer" href="'.$newurl.'"',$allstr);
}
//新增代码---jimmy.end-----
return$allstr;
}
到此这篇关于帝国cms结合项url参数优化-让URL地址看起来更美!就介绍到这了。青春的路上充满了彷徨。青春的热血在我们的身体中流淌,叛逆的力量在沉默中爆发。叛逆、 嚣张、 标新立异···是我们的标识。我们渴望成长,渴望挣脱种种的束缚,却又羽翼未丰。我们渴望能够独当一面,渴望被认可,却又能力不足。我们有满腔的基情与理想,可又无法释放。于是,我们纷纷发表独立宣言,希望得到大人世界的认可,我们纷纷反抗,希望挣脱束缚。我们徘徊在梦想与堕落的边缘,不知路在何方。更多相关帝国cms结合项url参数优化-让URL地址看起来更美!内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!