Magento在产品视图页面上显示具有父类别的所有类别

时间:2012-03-02 10:27:30

标签: magento magento-1.4 categories

继续这个问题:Display ALL categories that a product belongs to in Magento

有没有办法显示完整的类别路径(每个阶段都有链接),而不是只显示产品所属的最终类别?

到目前为止我有这个代码......

<?php
            $currentCatIds = $_product->getCategoryIds();
            $categoryCollection = Mage::getResourceModel('catalog/category_collection')
                 ->addAttributeToSelect('name')
                 ->addAttributeToSelect('url')
                 ->addAttributeToFilter('entity_id', $currentCatIds)
                 ->addIsActiveFilter();
            foreach($categoryCollection as $cat){
            ?>
                <a href="<?php echo $cat->getUrl(); ?>">
                    <?php echo $cat->getName() ?>
                </a>
            <?php } ?>

正确链接页面上显示的类别名称。 我想要的是显示完整的Cat&gt; Sub Cat&gt; Sub Sub Cat跟踪,并使该踪迹中的每个元素正确链接。

1 个答案:

答案 0 :(得分:3)

这个怎么样:

foreach($categoryCollection as $cat){
    $parents = $cat->getCollection()
        ->addIdFilter($cat->getParentIds())
        ->addAttributeToSelect('name')
        ->addUrlRewriteToResult()
        ->setOrder('level');
    foreach ($parents as $parentCat) {
        // Build your parent links
    }
}

顺便说一下,这种代码并不属于模板。它应该进入一个被渲染块的方法(或者至少到一个帮助器中)。