2013-01-22 77 views
0

以下類別的ID是我到目前爲止,獲得的股票項目:Magento的 - 獲取的「庫存」項目

$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

你可以試試這個代碼示例:

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

    print_r($categoryIds); 
} 
+0

就是這樣。謝謝! – BornKillaz

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