PHPCMS取消搜索时的分词功能的方法
发布时间:2014-05-06 14:33:49 作者:佚名
我要评论
最近弄一个站,但是搜索功能有点蛋疼了。分词功能出来的结果,好像不如不用。所以做以下修改,暂时先不用分词功能吧。
PHPCMS的搜索功能相比其他CMS算是比较差的了,搜索精度非常低。虽说他有个搜索关键字分词功能,但有的时候不分词的准确度却会高于分词。如何去掉PHPCMS关闭搜索关键字分词功能?
用记事本打开 \phpcms\modules\search\index.php 大概在78行能够找到下面的代码:
复制代码
代码如下:$segment_q = $segment->get_keyword($segment->split_result($q));
注释掉这行代码就能取消分词功能。
网上搜集了些资料,用的是其他办法,我没尝试过,仅作为记录
第一个文件:phpcms\modules\search\index.php
复制代码
代码如下://如果分词结果为空
if(!empty($segment_q)) {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND `data` like '%$q%'";//2014.1.13 by: mosell 不使用分词功能了
//$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND MATCH (`data`) AGAINST ('$segment_q' IN BOOLEAN MODE)";
} else {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND `data` like '%$q%'";
}
if(!empty($segment_q)) {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND `data` like '%$q%'";//2014.1.13 by: mosell 不使用分词功能了
//$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND MATCH (`data`) AGAINST ('$segment_q' IN BOOLEAN MODE)";
} else {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND `data` like '%$q%'";
}
还有以上修改大概是在第80行左右。
复制代码
代码如下:$datatest=array();//2014.1.13 by: mosell //用于显示搜索结果列表
$datatest=$data;//2014.1.13 by: mosell //用于显示搜索结果列
$datatest=$data;//2014.1.13 by: mosell //用于显示搜索结果列
以上大概在$execute_time = execute_time();$pages = isset($pages) ? $pages : '';这两句的上面,大概在第190多行吧
第二个文件:phpcms\templates\模板文件夹\search\list.html
把{loop $data $i $r} 改成 {loop $datatest $i $r}
大概就是这样了,放这里免得忘记了。
相关文章
完美解决phpcms图片太大撑破表格图片自适应图片按比例缩小
下面小编就为大家带来一篇完美解决phpcms图片太大撑破表格图片自适应图片按比例缩小。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-10-18- 这篇文章主要介绍了PHPCMS v9 安全设置、防范教程,需要的朋友可以参考下2016-09-05
PHPCMS V9 全站 Sitemaps生成实现代码[服务器端版]
这篇文章主要介绍了PHPCMS V9 全站 Sitemaps生成实现代码[服务器端版],需要的朋友可以参考下2016-06-08- 这篇文章主要介绍了phpcms内容详情页只显示日期不显示时间的方法,即格式化时间输出的方法,需要的朋友可以参考下2015-06-19
- 这篇文章主要介绍了PHPCMS制作网站地图的简单方法,本文给出了操作步骤及标签源码,需要的朋友可以参考下2015-06-19
- 这篇文章主要介绍了PHPCMSV9父栏目调用子栏目的方法,本文讲解了在二级栏目列表页调用、在一级栏目列表页调用两种方法方式,需要的朋友可以参考下2015-06-19
- 这篇文章主要介绍了PHPCMS使用date函数实现自动更新页脚年月的方法,本文主要还是可以学习到date函数的用法了,需要的朋友可以参考下2015-06-19
- 这篇文章主要介绍了phpsso忘记密码的解决办法,本文用PHPCMS的密码及encrypt值替换数据表解决了这个问题,方法还是挺靠谱的,只是操作要求有点,需要的朋友可以参考下2015-06-19
- 这篇文章主要介绍了phpcms 退出无法同步通知discuz问题的解决方法,需要的朋友可以参考下2014-12-15
phpcms v9列表页如何调用子栏目如首页>产品中心>产品类型a
phpcms v9列表页如何调用子栏目如:首页>产品中心>产品类型a>产品类型a11,在列表页产品类型a中,包括产品类型a1、产品类型a2、产品类型a32014-09-24


最新评论