2

我在最新版本的 magento 中发现了一个奇怪的错误:高级搜索工具无法正常工作。

我做了什么:

  • 安装新的 magento 副本
  • 在管理页面添加了一个名为 Test 1 的产品
  • 重新索引所有
  • 清除所有缓存
  • 在前端页面:
    • 打开高级搜索页面
    • 在目录中搜索您之前添加的“测试1”产品
      • 没有结果

我没有使用产品的“名称”作为搜索属性的结果。

似乎另一个用户也有同样的问题:Magento 高级搜索没有返回结果

如果您在数据库中看到实体表,您可以看到带有产品名称的属性“71”。属性 71 是“名称”Magento 属性。

目录产品 Varchar 属性后端表

目录产品 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 错误吗?

更新:如果我将默认类别添加到产品类别列表中,似乎它可以工作。是正常的 Magento 行为吗?

谢谢

4

1 回答 1

3

由于高级搜索查询的完成方式,这可能是 mysql 5.6 中的一个错误。此错误报告中有一个解决方法。

http://bugs.mysql.com/bug.php?id=70608

于 2013-10-16T09:30:38.117 回答