解析Magento修复产品搜索结果不准确的问题

  我们常常在magento搜索产品,比如按照产品名字来搜索“iphone”,但是搜索到的结果,居然没有我们在后台设置的产品。这常常会令我们非常郁闷。下面我们来看下如何修改让magento开发可以让产品按照我们想要的结果来展示。

  Magento的搜索产品默认结果集是按查询的词去分词了再OR查询(具体按Catalog Search设置的查询模式)。

  如果我们搜索产品“ihone 6 plus”这词的话,返回的结果是产品名字或者产品可查找属性(后台属性设置 use in catalog search)中包括“iphone”、“6”、“plus”的产品。

  如果我们想让搜索的结果更加精确,比如搜索“ihone 6 plus”,能够直接显示出来“ihone 6 plus”,那就最好了。下面我们来修改一下“app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php”文件。我们可以通过重写model或者直接到community/local目录下创建相同路径的相同文件,下一步我们来修改搜索结果。

  找到prepareResult()方法,再找到345行左右$likeCond = '';然后把整个if判断注释掉,最后在下面添加:

  $likeCond = '`s`.`data_index` LIKE :likew';$bind[':likew'] = '%' . $queryText . '%';

 

转载于:https://my.oschina.net/u/3840660/blog/3043139

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值