0

こんにちは、最上位のカテゴリ ID のみが必要です。サブカテゴリではなく、親カテゴリ ID のみが必要です。そのような :

ルート カテゴリ (その ID は不要)

  1. 家具(このIDのみ)リビングルーム(このサブカテゴリではありません) b. 寝室(これじゃない)

子供ではなくトップレベルのカテゴリのみが必要です。そうするのを手伝ってくださいありがとう

4

3 に答える 3

1

レベル 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 とレベル 4 の両方のカテゴリを取得するには、次のように「in」演算子を使用してコレクションをファイラーします。

   $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();
        }
于 2013-03-06T12:19:05.230 に答える
0

以下のコードを使用してください

$children = Mage::getModel('catalog/category')->getCategories(Mage::app()->getStore()->getRootCategoryId());
foreach ($children as $category) {
    echo $category->getId();
}
于 2013-03-06T12:11:43.940 に答える
0

以下のコードを使用

$_categories=Mage::getModel('catalog/category')
                ->getCollection()
                ->addAttributeToSelect('*')
                ->addAttributeToFilter('level',2)
                ->addIsActiveFilter();
于 2013-03-06T12:17:12.183 に答える