我想检查一些产品是否有库存,但无论我做什么,isInStock()方法总是返回TRUE.我的产品是可配置的产品,没有相关产品,在"库存"选项卡下,"库存可用性"设置为"缺货".我究竟做错了什么?谢谢!
Ala*_*orm 52
Magento目前有很多历史,所以不要总是相信方法名称会做"看起来很明显"的事情,这是一个好主意.几年前,现在显而易见的并不明显.
如果您在Mage_Catalog_Model_Product类上查看以下两个方法
public function isInStock()
{
return $this->getStatus() == Mage_Catalog_Model_Product_Status::STATUS_ENABLED;
}
public function getStatus()
{
return $this->_getData('status');
}
Run Code Online (Sandbox Code Playgroud)
您可以看到isInStock检查状态属性,在产品管理员的"常规"部分中设置.
试试这个
$stockItem = $product->getStockItem();
if($stockItem->getIsInStock())
{
//in stock!
}
else
{
//not in stock!
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
29319 次 |
| 最近记录: |