Magento层导航错误的产品数量

时间:2014-02-25 18:20:22

标签: magento-1.7

问题:对于所有属性,列表页面中的分层导航的产品计数不正确,但类别产品计数正常。

Magento版本:1.7.0.2

我已删除目录文件和文件夹的所有覆盖,并且还上传了magento核心目录文件以检查核心文件的问题但仍然没有问题。

示例:

制造商

制造1(90)

制造2(82)

制造3(223)

但是当我点击制表1时,会有3种产品。

我发现有一件事,如果我改变Mage :: getSingleton('catalog / layer'),在下面提到的代码中;到Mage :: getModel('catalog / layer');比产品数量好,但产品不按过滤器显示。

应用程序/代码/核心/法师/目录/砌块/层/ View.php 线号 - 149

public function getLayer()
{
   return Mage::getSingleton('catalog/layer');
}

我感谢任何帮助。

提前致谢。

1 个答案:

答案 0 :(得分:0)

将图层单例更改为模型是错误的。如果它对你有帮助,那就意味着你在自定义代码中的某个地方破坏了图层......所以这似乎是你本地代码中的一个问题。但首先你是否尝试重建索引?请从重新索引产品平面数据和属性开始。然后尝试调试。这里计算属性的计数:app / code / core / Mage / Catalog / Model / Resource / Layer / Filter / Attribute.php:83 in getCount()方法。尝试捕捉选择对象并查看实际选择的内容。 xDebug对于这样的情况非常有用。如果你不使用它,那么你可以在返回smth之前使用指定的方法,如

$a = (string) $select;
die($a);

然后你会有计数选择,你可以分析它。祝好运!