Obtenha apenas produtos em estoque
-
13-12-2019 - |
Pergunta
Eu uso o código abaixo para mostrar a quantidade de artigos da categoria número 4 (no meu caso)!Magento está exibindo 65 artigos dessa categoria, mas no estoque existem apenas 36 artigos.O que você gostaria de conseguir é mostrar a quantidade de artigos que estão em estoque.Não quero incluir artigos fora de estoque.
<?php
$products_count = Mage::getModel('catalog/category')->load(4)
->getProductCount();
echo($products_count);
?>
Solução
Tente desta forma
<?php
$category = Mage::getModel('catalog/category')->load(4);
$productCollection = Mage::getResourceModel('catalog/product_collection')
->addAttributeToSelect(array('name', 'image', 'price'))
->addAttributeToFilter('status', array('eq' => Mage_Catalog_Model_Product_Status::STATUS_ENABLED));
$productCollection->addCategoryFilter($category);
Mage::getSingleton('cataloginventory/stock')
->addInStockFilterToCollection($productCollection);
echo $productCollection->getSize();
?>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange