Magento - 获取“库存”项目的类别ID

时间:2013-01-22 18:53:26

标签: php magento stock

这是我到目前为止所获得的IN STOCK项目:

$productCollection = Mage::getModel('cataloginventory/stock_item')
                     ->getCollection()
                     ->addQtyFilter('>', 0);

echo $productCollection->getSelect();

foreach ( $productCollection as $currentProduct ) {

    $categoryIds = $currentProduct->getCategoryIds();

    print_r( $categoryIds );

}

它让产品很好,但我需要获取每个项目的当前类别ID,因此在上面的代码中$currentProduct->getCategoryIds()无效。

有没有人知道如何检索IN STOCK项目及其类别ID?

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以尝试以下代码示例:

...
foreach ( $productCollection as $currentProduct ) {
    $categoryIds = Mage::getModel('catalog/product')->load($currentProduct->getId())
        ->getCategoryIds();

    print_r( $categoryIds );
}

答案 1 :(得分:0)

这似乎已在此处得到解答。

请参阅以下网址,了解如何检索产品类别ID:

Magento category ID from product ID

Get product's category ids and names

您可以使用以下if statement检查它是否有货:

<?php   
$__manStock = $_product->getStockItem()->getManageStock();
$__invAmt = (int)Mage::getModel('cataloginventory/stock_item')->loadByProduct($_product)->getQty();
    if ($__invAmt >= 1)
        {
    //Do Something here
    }
?>

甚至:

<?php if ($_product->isAvailable()): ?>
Do Something here
<?php endif; ?>
相关问题