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

技术教程 2026-01-09 16:16:31 浏览

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%'";}

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

代码如下:

$datatest=array();//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}大概就是这样了,放这里免得忘记了。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐