我最近将我的magento从1.4升级到1.6.1,在修复了很多bug之后,我仍然有一个问题。当我搜索多个单词时,目录搜索将返回许多结果。例如"samsung 2100“,它将在Samsung OR 2100上搜索所有内容。
我试过编辑
-app/code/core/Mage/CatalogSearch/Model/Mysql4/Fulltext.php(did nothing,甚至在损坏之后也不会)
-app/code/local/Mage/CatalogSearch/Model/Mysql4/Fulltext.php(did nothing,甚至在损坏之后也不会)
-app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php(did之类的)
http://www.magentocommerce.com/boards/viewthread/233799/#t360244
发布于 2011-12-30 06:15:37
转到此文件:
/app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php
在第345行,更改OR -> AND
删除现有搜索词。刷新cache....should的工作方式就像一个护身符
看看这里..。Dholo.com
尝试使用多字search...it仅返回同时包含术语/的产品
发布于 2014-04-08 10:07:57
我在Magento的默认搜索中发现的一件事是,它在“加权重要字段”方面可能更智能一些。我们发现,我们的许多搜索查询都包含品牌名称。例如,“耐克跑鞋”。我们还发现,许多搜索短语以某种方式与我们设置的类别相关。例如,“跑步鞋”
我所做的是编写了一段代码,它将从搜索查询中提取品牌名称和类别,并将它们用作Fulltext.php保存到结果表中的产品id的过滤器。
你想把上面提到的php文件从
/app/oode/core/Mage/CatalogSearch/Model/Resource/Fulltext.php到/app/code/local/Mage/CatalogSearch/Model/Resource/Fulltext.php
我所做的是将我的代码调整放在:
https://gist.github.com/jaseclamp/10083937
在我们的情况下,仅仅这一小段代码就能极大地提高搜索结果的准确性。上面的代码似乎也与Magento在同义词和重定向等方面所做的任何事情没有冲突。同样,下面的页面将显示“搜索‘原始搜索短语’的结果”,即使我们在实际的MySQL查询中修改了搜索短语以使其更有效。它增加了几个微秒的搜索处理,但是,一旦结果被缓存,后续的搜索就会很快。
如果您想查看我的代码如何调整用于将搜索结果插入到结果表中的MySQL,只需输入:
echo "<pre>"; print_r($sql); die; 在函数末尾的"$adapter->query“之前。
https://stackoverflow.com/questions/8211643
复制相似问题