我在最新版本的magento中发现了一个奇怪的错误:高级搜索工具无法正常工作。
我做了什么:
我没有使用搜索属性作为产品“名称”的结果。
似乎其他用户遇到了同样的问题:Magento advanced search returns no results
如果在数据库中看到实体表,则可以看到带有产品名称的属性“71”。属性71是“名称”Magento属性。
目录产品Varchar属性后端表
如果我尝试在app / code / core / Mage / CatalogSearch / Model / Advanced.php上读取Magento代码并进行调试,我可以看到这个命令:
$this->getProductCollection()->addFieldsToFilter($allConditions);
array(1) {
["catalog_product_entity_varchar"] => array(1) {
[71] => array(1) {
["like"] => string(9) "%Test 1%"
}
}
}
但Magento没有告诉我任何结果。
如果我尝试使用SKU字段执行搜索过程,magento会退回产品!
array(1) {
["catalog_product_entity"] => array(1) {
["sku"] => array(1) {
["like"] => string(6) "%test%"
}
}
}
是Magento Bug吗?
更新:如果我将默认类别添加到产品类别列表中,那么它似乎有效。是Magento的正常行为吗?
感谢
答案 0 :(得分:3)
由于高级搜索查询的执行方式,这可能是mysql 5.6中的一个错误。这个错误报告中有一个解决方法。