我们在使用dedecms v5.7进行英文搜索的时候,发现如果输入的是大写字母,dedecms将自动过虑掉,而只搜索小写的字母和数字,所以往往对于得到的搜索结果不是很令人满意
原因
纠其原因发现dedecms中/include/helpers/filter.helper.php
文件中正式表达式没有添加A-Z的规则,立即动手来解决这个小Bug吧!
例如:我们搜索“Xingkongweb”,但搜索结果中只保留了“ingkongweb”,过滤掉大写字母
解决方法
首先下载你的/include/helpers/filter.helper.php
文件到本地电脑,并用编辑器打开,找到程序的第169行,代码如下:
if(preg_match("/[^0-9a-z@#.]/",$keyword[$i]))
将其修改为:
if(preg_match("/[^0-9a-zA-Z@#.]/",$keyword[$i]))
上传并覆盖原文件,重新测试搜索结果!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。