0

以下のコードでは、ID 7 の特定の親カテゴリから子カテゴリを取得しようとしています。

<?php
    $rootCatId = Mage::app()->getStore()->getRootCategoryId();

    function getTreeCategories($parentId, $isChild){
        $allCats = Mage::getModel('catalog/category')->getCollection()
                    ->addAttributeToSelect('*')
                    ->addAttributeToFilter('is_active','1')
                    ->addAttributeToFilter('include_in_menu','1')
                    ->addAttributeToFilter('parent_id',array('eq' => $parentId));

        $class = ($isChild) ? "sub-cat-list" : "cat-list";
        $html .= '<ul class="'.$class.'">';
        foreach($allCats as $category)
        {
            $html .= '<li>'.$category->getName()."";
            $subcats = $category->getChildren();
            if($subcats != ''){
                $html .= getTreeCategories($category->getId(), true);
            }
            $html .= '</li>';
        }
        $html .= '</ul>';
        return $html;
    }
    $catlistHtml = getTreeCategories($rootCatId, false);

    echo $catlistHtml;

?>

このコードでは、すべてのカテゴリが表示されます。ID 7 の特定のカテゴリからのみこのツリーを取得するにはどうすればよいですか?

マイケル

4

1 に答える 1

0

これを試してみてください。結果が得られることを願っています。

$children = Mage::getModel('catalog/category')->getCategories(7);
foreach ($children as $category) {
    echo $category->getName();
}

その他のヘルプはこちら

于 2013-06-03T09:58:38.533 に答える