我在最新版本的 magento 中发现了一个奇怪的错误:高级搜索工具无法正常工作。
我做了什么:
- 安装新的 magento 副本
- 在管理页面添加了一个名为 Test 1 的产品
- 重新索引所有
- 清除所有缓存
- 在前端页面:
- 打开高级搜索页面
- 在目录中搜索您之前添加的“测试1”产品
- 没有结果
我没有使用产品的“名称”作为搜索属性的结果。
似乎另一个用户也有同样的问题:Magento 高级搜索没有返回结果
如果您在数据库中看到实体表,您可以看到带有产品名称的属性“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 错误吗?
更新:如果我将默认类别添加到产品类别列表中,似乎它可以工作。是正常的 Magento 行为吗?
谢谢