首页 教程资源正文

分析一下PHPCMS取消搜索时的分词功能的方法

娜迦源码 教程资源 2019-03-30 07:06:21 293 0 教程资源

PHPCMS的搜索功能相比其他CMS算是比较差的了,搜索精度非常低。虽说他有个搜索关键字分词功能,但有的时候不分词的准确度却会高于分词。如何去掉PHPCMS关闭搜索关键字分词功能?
用记事本打开 phpcmsmodulessearchindex.php 大概在78行能够找到下面的代码:

复制代码
代码如下:
$segment_q = $segment->get_keyword($segment->split_result($q));
注释掉这行代码就能取消分词功能。
网上搜集了些资料,用的是其他办法,我没尝试过,仅作为记录
第一个文件:phpcmsmodulessearchindex.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%'";
}

还有以上修改大概是在第80行左右。

复制代码
代码如下:
$datatest=array();//2014.1.13 by: mosell //用于显示搜索结果列表
$datatest=$data;//2014.1.13 by: mosell //用于显示搜索结果列

以上大概在$execute_time = execute_time();$pages = isset($pages) ? $pages : '';这两句的上面,大概在第190多行吧
第二个文件:phpcmstemplates模板文件夹searchlist.html
把{loop $data $i $r} 改成 {loop $datatest $i $r}
大概就是这样了,放这里免得忘记了。


版权声明

1:如非特殊说明,本站对提供的源码不拥有任何权利,其版权归原著者拥有。

2:请勿将该源码、软件进行商业交易、转载等行为,该源码、软件只为研究、学习所提供,该软件使用后发生的一切问题与本站无关。

3:本网站所有源码和软件均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。如有侵犯你版权的,请来信(邮箱:393249296@qq.com)指出,本站将立即改正。

本文链接:https://www.wsx6.cn/post/859.html

分享:

支付宝

微信

嘿,我是客服
请先 登录 再评论,若不是会员请先 注册