我需要获得每个产品的库存数量,其中"相关产品"显示在前端。使用Magento 1.9。
此功能无法帮助我显示相关产品部分的实际数量:
Mage::getModel('cataloginventory/stock_item')->loadByProduct($_product)->getQty();
该功能在产品视图页面和目录集中显示库存 qty ,但不适用于相关产品。
怎么办?
答案 0 :(得分:0)
我不确定你是否真的在PHTML文件中调用上面的代码。
假设您正在使用RWD主题并直接在PHTML中调用它(这不是根据Magento标准),文件位置将是 app / design / frontend / rwd /默认/模板/目录/产品/列表/ related.phtml 强>
在内部, FOREACH 循环,调用下面一段代码(附上截图供参考 - 前端显示):
<?php echo Mage::getModel('cataloginventory/stock_item')->loadByProduct($_item)->getQty(); ?>
理想的解决方案是覆盖CORE文件:
app/code/core/Mage/CatalogInventory/Model/Stock/Item.php
如下所示:
app/code/local/Namespace/Modulename/Model/Stock/Item.php
为了添加新功能:
<?php
class Namespace_Modulename_Model_CatalogInventory_Stock_Item extends Mage_CatalogInventory_Model_Stock_Item
{
public function getItemStockQty($product)
{
return $this->loadByProduct($product)->getQty();
}
}
在PHTML文件中,在 FOREACH LOOP 下调用此函数如下:
<?php echo $this->getItemStockQty($_item); ?>
<强>截图强>
希望这有帮助。
快乐编码......