Magento:无法获得类别儿童 [英] Magento: Can't get categories children

查看:73
本文介绍了Magento:无法获得类别儿童的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

由于某种原因,该代码在尝试获取类别子类别时返回NULL.

For some reason this code is returning NULL when trying to get a categories subcategories.

 <?php var_dump($_category->getChildrenCategories()); ?>

这是.phmtl文件中的完整代码.

Here is the full code from a .phmtl file.

<ul id="nav_vert">
            <?php foreach ($this->getStoreCategories() as $_category): ?>
            <?php if ($_category->getIsActive()) { ?>
            <?php $open = $this->isCategoryActive($_category); ?>
            <?php $potential = $_category->hasChildren(); ?>
            <li><a href="<?php echo $this->getCategoryUrl($_category); ?>"<?php if($open) { echo ' class="open"'; } ?><?php if($potential) { echo ' class="potential"'; } ?> ><?php if($potential&&$open) { echo 'v '; } elseif($potential) { echo '> '; }else{ echo '  '; }?><?php echo $_category->getName();?></a>
                <?php if ($open && $potential): ?>
                <?php var_dump($_category->getChildrenCategories()); ?>
                <ul>
                    <?php foreach ($_category->getChildrenCategories() as $subcategory): ?>
                    <?php $subCat = Mage::getModel('catalog/category')->load($subcategory); ?>
                    <?php $open = $this->isCategoryActive($subCat); ?>
                    <?php $potential = $subCat->hasChildren(); ?>
                    <li><a href="<?php echo $this->getCategoryUrl($subCat); ?>"<?php if($open) { echo ' class="subopen"'; } ?><?php if($potential) { echo ' class="potential"'; } ?><?php if(!$potential&&$open) { echo ' class="final"'; } ?> ><?php if($potential&&$open) { echo ':: '; } elseif($potential) { echo '> '; }?><?php echo $subCat->getName(); ?> (<?php echo $subCat->getProductCount(); ?>)</a>
                        <?php if ($open && $potential): ?>
                        <ul>
                            <?php foreach ($subcategory->getChildrenCategories() as $subsubcategory): ?>
                            <?php $subsubCat = Mage::getModel('catalog/category')->load($subsubcategory); ?>
                            <?php $open = $this->isCategoryActive($subsubCat) ?>
                            <li><a href="<?php echo $this->getCategoryUrl($subsubCat); ?>" <?php if($open) { echo ' class="final"'; } ?>><?php echo $subsubCat->getName(); ?> (<?php echo $subsubCat->getProductCount(); ?>)</a></li>
                            <?php endforeach; ?>
                        </ul>
                        <?php endif; ?>
                    </li>
                    <?php endforeach; ?>
                </ul>
                <?php endif; ?>
            </li>
            <?php } ?>
            <?php endforeach ?>
        </ul>

此行始终返回true

This line always returns true

<?php $potential = $_category->hasChildren(); ?>

我知道该类别有子类别.

And I know that the category has children.

有人可以建议为什么这不起作用吗?

Can anyone suggest why this doesn't work?

这是我将phtml放置在页面中的方式:

This is how I place the phtml in the page:

<reference name="left">
    <block type="catalog/navigation" name="catalog.vertnav" template="catalog/navigation/vert_nav.phtml" before="-" />
</reference>

Magento版本1.5.1.0

Magento version 1.5.1.0

推荐答案

尝试使用$_category->getChildren()(而不是$_category->getChildrenCategories())


祝您有个轻松的一天,
佩萨赫(Pesach)


Have an easy day,
Pesach

这篇关于Magento:无法获得类别儿童的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆