0

这是我到目前为止所拥有的,以获取库存物品:

$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?

谢谢你。

4

2 回答 2

2

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

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

    print_r( $categoryIds );
}
于 2013-01-22T21:43:50.237 回答
0

这似乎已经在这里得到了回答。

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

来自产品 ID 的 Magento 类别 ID

获取产品的类别 ID 和名称

您可以通过以下方式检查它是否有库存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; ?>
于 2013-01-22T19:05:15.947 回答