Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento CatalogSearch以使用或代替和_Magento - Fatal编程技术网

Magento CatalogSearch以使用或代替和

Magento CatalogSearch以使用或代替和,magento,Magento,我有一个自定义目录搜索,它有多个字段可供搜索(例如:宽度、长度等)。但默认情况下,Magento将其作为一个和搜索。我希望它是一个或搜索 这是背景吗?我什么也没看到。您刚刚发现了Magento技巧,它可以通过类似于的搜索增加返回量。将其更改为或逻辑并不会使其变得更好。结果越多,相关性就越小 最好使用Lucene、Sphinx或Solr作为搜索索引器。有前两个模块,最后一个是web服务器的功能 在Magento搜索的风车处倾斜以将和更改为或,需要为 app/code/core/Mage/Catal

我有一个自定义目录搜索,它有多个字段可供搜索(例如:宽度、长度等)。但默认情况下,Magento将其作为一个和搜索。我希望它是一个或搜索


这是背景吗?我什么也没看到。

您刚刚发现了Magento技巧,它可以通过类似于的搜索增加返回量。将其更改为逻辑并不会使其变得更好。结果越多,相关性就越小

最好使用Lucene、Sphinx或Solr作为搜索索引器。有前两个模块,最后一个是web服务器的功能

在Magento搜索的风车处倾斜以将更改为,需要为

app/code/core/Mage/CatalogSearch/Model/Mysql4/Fulltext.php

公共函数prepareResult($object,$queryText,$query)

需要

if ($like) {
     $likeCond = '(' . join(' OR ', $like) . ')';
}
请记住,当Magento决定发布带有逻辑的更高版本时,每个人都要求做相反的事情

好的搜索从Lucene开始,Lucene构建在Magento所基于的Zend框架中,并从那里开始。有词干、复数和模糊搜索,允许一些小的拼写错误,这很好。而且非常重要的是,实际生成的相关性评级使得按相关性排序实际工作TM

Magento搜索没有相关性,返回是任意的,通常是按数据库顺序进行的,因此添加更多返回只意味着您的客户通常需要在10-30页中进行排序才能找到任何内容

if ($like) {
     $likeCond = '(' . join(' OR ', $like) . ')';
}