我在最新版本的 magento 中发现了一个奇怪的错误:高级搜索工具无法正常工作。
我做了什么:
- 安装 magento 的新副本
- 在管理页面添加了一个名为“测试 1”的产品
- 重新索引全部
- 清除所有缓存
- At the frontend page:
- 打开高级搜索页面
- Search the "Test 1" product that you have added before in the catalog
我没有使用产品的“名称”作为搜索属性的结果。
似乎另一个用户也有同样的问题:Magento 高级搜索未返回结果 https://stackoverflow.com/questions/18587673/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 错误吗?
更新:如果我将默认类别添加到产品类别列表中,似乎它有效。这是正常的 Magento 行为吗?
thanks
由于高级搜索查询的完成方式,这可能是 mysql 5.6 中的一个错误。此错误报告中有一个解决方法。
http://bugs.mysql.com/bug.php?id=70608 http://bugs.mysql.com/bug.php?id=70608
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)