我试图弄清为什么Magento Enterprise网站在页面的“相关项目”部分中四次显示同一项目。

正确的行为:
- 清除缓存后,四个 不同的项目 显示在首页加载(这是正确的行为)

问题: - 其他页面加载不仅显示相同的四个项目,还显示 完全相同的项目 重复四次(请参阅屏幕截图)
- 重复的项目始终是 最后一项 它显示在原始页面加载中。换句话说,如果在缓存后的首页加载上显示A,B,C,D相关的项目,则“ D”将在将来的页面加载中重复四次。 D,D,D,D

Same exact item repeated four times

背景:
- 页面使用自定义主题。
- 此问题仅在打开整页缓存时发生。
- 如果页面返回到“默认”主题,则不再发生问题,即使全页缓存已打开
- 回顾一下:问题仅在自定义主题和全页缓存中发生
- Magento Enterprise Ver。 1.13.0.0

页面的相关产品部分插入以下代码:

<?php echo $this->getChildHtml('relatedProducts', false) ?>

我会感谢:
- 关于这个问题可能是什么的特定潜在客户
- 可靠的方法来禁用与此相关的特定缓存(在终端中的GUI?中使用?)
- 我可以采取测试和步骤将其缩小到代码,数据库或文件。

先感谢您!

有帮助吗?

解决方案

事实证明,我们已经创建了默认的本地版本 相关.phtml 被用作相关项目块的模板的文件。在此代码中,循环中有此行:

$itemBlock = $this->getChild('catalog.product.related.item')->setItem($_item)->setPosition($i);

请注意,$ i变量在线路末端附近。

该变量没有在代码中的其他位置增加。我添加了 $i = 0; 循环之前 $i++; 在循环内的适当位置。随着$ i变量现在增加,重复项目问题已解决。

许可以下: CC-BY-SA归因
scroll top