2013-03-06 120 views
0

您好,我只需要頂級類別ID即我只需要父類別ID不是子類別。如:Magento只有父類別ID

根類別(其ID的沒有需要)

  1. 傢俱(僅此ID) 一個。客廳(不是這個小類) b。臥室(不是這一個)

我只需要頂級類別ID沒有孩子,請幫我在下面

$children = Mage::getModel('catalog/category')->getCategories(Mage::app()->getStore()->getRootCategoryId()); 
foreach ($children as $category) { 
    echo $category->getId(); 
} 
+0

你好,大家好感謝您的幫助,但在這裏我需要一件事,如果我在客廳類別頁面,我想要顯示它的父母子類別的客廳和臥室的子類別。我該怎麼做,請。 – rishu 2013-03-06 12:45:56

+0

非常簡單的使用在你的過濾器,並同時獲得2級和4級類別,當你在等級3的類別頁面是 - > addAttributeToFilter(「級別」,陣列(「中的」 =>陣列(「2」,「4」 )) – Haijerome 2013-03-06 12:59:01

回答

1

如果您沒有錯,您只查找LEVEL 2類別ID。如果是的話下面的代碼可以幫助你

$categoryCollection = Mage::getResourceModel('catalog/category_collection') 
       ->addAttributeToSelect('*') 
       ->addAttributeToFilter('level','2') 
       ->addAttributeToSort('name', 'ASC') 
       ->addIsActiveFilter(); 
     foreach($categoryCollection as $cat){ 
      echo '<br/>'.$cat->getId().' | '.$cat->getName(); 
     } 

兩全2級和LEVE 4 catgories只是用「在」運營商過濾器的集合,如下圖所示:

$categoryCollection = Mage::getResourceModel('catalog/category_collection') 
       ->addAttributeToSelect('*') 
       ->addAttributeToFilter('level',array('in'=>('2','4'))) 
       ->addAttributeToSort('name', 'ASC') 
       ->addIsActiveFilter(); 
     foreach($categoryCollection as $cat){ 
      echo '<br/>'.$cat->getId().' | '.$cat->getName(); 
     } 
+0

感謝的人感謝ü非常它的工作原理:讓我所有二級類別感謝 – rishu 2013-03-06 12:24:34

+0

@rishu歡迎您。順便說一下上面找到你的最新評論過濾兩種等級2級,4級分類我更新的答案 – Haijerome 2013-03-06 13:06:26

0

使用下面的代碼,代碼

$_categories=Mage::getModel('catalog/category') 
       ->getCollection() 
       ->addAttributeToSelect('*') 
       ->addAttributeToFilter('level',2) 
       ->addIsActiveFilter();