0

我想让 Magento 显示产品的总数,包括子类别中的产品。例如。如果主类别有两个产品,一个子类别有五个产品。

IE:

  • 主要类别 (12)
  • 子类别 A (5)
  • 子类别 B (5)

我怎样才能做到这一点?

4

2 回答 2

1

试试这个代码。

   <ul>               
          <?php 
           // This is category id 
           $id = 42;

           $cat = Mage::getModel('catalog/category')->load($id);
           $subcats = $cat->getChildren();
           foreach(explode(',',$subcats) as $subCatid):
           $_category = Mage::getModel('catalog/category')->load($subCatid);
           if($_category->getIsActive()):  
                $productCount = Mage::getModel('catalog/category')->load($_category->getId())->getProductCount();?>

         <li><a href="<?php echo $_category->getURL();?>"><span><?php echo $_category->getName();?>
<?php echo '('.$productCount.')'?></span></a></li>

        <?php endif;
         endforeach;?>
        </ul>
于 2013-08-12T03:16:12.033 回答
0

否则你可以使用这个功能。

public function getProductCount($category) 
{ 
$prodCollection = Mage::getResourceModel(’catalog/product_collection’)->addCategoryFilter($category); 
Mage::getSingleton(’catalog/product_status’)->addVisibleFilterToCollection($prodCollection); 
Mage::getSingleton(’catalog/product_visibility’)->addVisibleInCatalogFilterToCollection($prodCollection); 
return $prodCollection->count(); 
}
于 2013-08-12T03:20:58.777 回答