当用户登录并点击我的心愿单链接时,它会显示产品。但它也显示了残疾产品。我想只在心愿单中显示已启用的产品。 任何人都可以建议我如何在代码中进行更改,以便它只显示我的心愿单区域中已启用的产品。
答案 0 :(得分:1)
您可能需要扩展此类Mage_Wishlist_Model_Wishlist
并通过按状态添加过滤器来覆盖方法getItemCollection
。这样的事情(未经测试,只是添加了最后一个方法调用):
$this->_itemCollection = Mage::getResourceModel('wishlist/item_collection')
->setStoreId($this->getStore()->getId())
->addWishlistFilter($this)
->addAttributeToFilter(
'status',
array('eq' => Mage_Catalog_Model_Product_Status::STATUS_ENABLED)
);
请注意,这会在每次加载愿望清单项目时排除已停用的产品,不仅是来自愿望清单页面,还有可能放在您显示它的任何地方,我认为这就是您想要的。