1 559 2020-11-18 10:11:32
收藏帝国官方结合项如果同一个字段不同值点击两次以上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;这行代码的前面插入以下代码即可:
preg_match_all('/<a 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($queryas$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('href="'.$url.'"','href="'.$newurl.'"',$allstr);
}
如果有多个结合项,可以把上面的代码放到一个函数里面调用方法就更加简单了,只需把echo $allstr;替换成echo beautifyUrl($allstr);即可
function beautifyUrl($allstr){
preg_match_all('/<ahref="(.*?)".*?>(.*?)</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($queryas$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('href="'.$url.'"','href="'.$newurl.'"',$allstr);
}
return$allstr;
}
本文地址:https://xzo.com.cn/develop/empire/110.html
如果您认可我们的分享,有意与我们合作开展帝国cms网站建设与开发业务或插件定制,请联系右侧在线客服。我们能给您的,就是高质量的模板与售后。
标注了信息来源为下载鸥的文章皆为原创,如果是转载的优质文章,我们也都标注了出处。如果您喜欢我们的文章,请按照下载鸥所标注的文章出处进行标注,谢谢您的配合。
帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用。
当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。
很多技术分享型站点转载了外站不少信息,部分有素质的站长会展示信息来源并链...
帝国CMS7.5默认伪静态规则大全(.htacces+nginx+web.config)提供了多种服务器...
很多网友在新增信息之后发现首页看不到栏目也看不到,于是开始点刷新刷新内容...
客户站点由于员工操作失误,直接删除了20篇文章。如果有定期备份,那恢复数据即...
帝国cms留言板使用比较广泛,但如果不做合理配置,则会出现被垃圾留言刷屏的情...
QQ客服是很多帝国cms网站的在线客服方案,开通QQ客服没有门槛,而且接收信息方...
帝国cms自定义页面常用于制作一些相对简单的页面,但如果注意过页面tdk,会发现...
帝国cms有禁止ip访问的功能,但如果不小心禁止了自己的ip,或是操作失误导致所...
帝国CMS有自带的循环数据标签页可以实现以下效果,但用PHP来实现可以更灵活,可...
用过织梦CMS的朋友换帝国CMS肯定会问这样的问题,帝国cms模板在哪个文件夹?...
灵动标签多条件调用并判断是否为第一条信息...
判断是否有变量,有则输出样式。接着判断变量是否不等于0,成立就输出CSS样式。...
帝国tags伪静态链接修改代码...
TAGS作为小类信息集合页,往往能获得不错的排名,进而为网站带来不小的流量。但...
关闭浏览器当前升级程序窗口,在新窗口中运行。如果还是不行就换个浏览器运行...
帝国CMS自定义列表按时间调用,演示代码按8小时、24小时、7天、30天、365天...