修改Magento搜索以匹配任何关键字
问题描述:
我在使用Magento管理产品搜索时遇到了一些麻烦!基本上我需要以下内容:修改Magento搜索以匹配任何关键字
如果产品名称为“Microsoft无线鼠标和键盘”,并且用户键入管理产品屏幕“无线键盘”,则我希望该产品出现。目前,除非我按照出现的顺序(例如“无线鼠标”)键入两个单词,否则我不会收到搜索结果。
我曾尝试将Magento Catalog设置设置为Like,Fulltext和Combine,并且所有结果都完全相同。在更改每个结果后,我已清除缓存和重新编制索引,并且它们不影响搜索的工作方式。
我正在运行Magento 1.9.2并运行VES Superstore主题。
任何关于哪个文件的建议我可以重写并更改MySql查询以执行我所需的操作?
感谢
答
这个回答我的问题对我来说:
http://www.bigeyedeers.co.uk/better-catalog-product-search-magento/
我真的不明白以前的答案,尽管感谢您的帮助。
答
在/app/code/core/Mage/Adminhtml/etc/config.xml
你会发现定义的车型为全球管理搜索。
如果您通过控制器/app/code/core/Mage/Adminhtml/controllers/IndexController.php
方法globalSearchAction
,您会发现Magento读取配置并在其上应用搜索并合并整个结果。
既然你正在寻找具体的产品被搜查地方,它位于/app/code/core/Mage/Adminhtml/Model/Search/Catalog.php
和查询如下:
$collection = Mage::helper('catalogsearch')->getQuery()->getSearchCollection()
->addAttributeToSelect('name')
->addAttributeToSelect('description')
->addSearchFilter($this->getQuery())
->setCurPage($this->getStart())
->setPageSize($this->getLimit())
->load();
嗨,谢谢你。为了得到我需要的结果,我将改变什么? – Shaun
您可以查看集合正在构建为查询,http://magento.stackexchange.com/questions/9464/display-a-sql-query-being-generated然后从那里您可以进行编辑 – Rabea
真的很抱歉,请你稍微详细解释一下,我仍然正在处理Magento系统。 – Shaun