我想显示产品所属的类别列表,顶级类别和子类别。
我想出了如何加载正确的topcategories,但是当我循环子类(子类别)时,它会加载该topcategory的所有子类,而不是产品所属的类别。
示例:
就像你可以看到它加载了大量的子类别,但只有红色条纹的子类别是产品所属的子类别。
我怎样才能确保它只显示在其顶级类别下的那些?
我的代码:
$currentCatIds = $_product->getCategoryIds();
$categoryCollection = Mage::getResourceModel('catalog/category_collection')
->addAttributeToSelect('name')
// ->addFieldToFilter('level',2)
->addAttributeToSelect('url')
->addAttributeToFilter('entity_id', $currentCatIds)
->addIsActiveFilter();
$out = "<ul>";
foreach($categoryCollection as $cat){
$out .= "<li>";
$out .= "<b><a href='".$cat->getUrl()."'>".$cat->getName()."</a></b>";
$out .="<ul class='sub'>";
$children = Mage::getModel('catalog/category')
// ->addAttributeToFilter('entity_id', $cat->getCategoryIds())
->load($cat->getId())
->getChildrenCategories();
foreach($children as $child){
$out .="<li><a href='".$child->getUrl()."'>".$child->getName()."</a></li>";
}
$out .="</ul>";
$out .= "</li>";
}
$out .= "</ul>";
echo $out;
为什么他们再次出现在下面? 我只想要topcategories下的子类,而不是两次子类。
最新回答
- 2019-12-51 #
相关问题
- php:magento 1x当订单全额退款完成后需要生成自定义邮件magento1.9magentophp2019-12-05 21:41
- php:Magento将日期显示为多个值magento1.9magentophpmagentodate2019-12-05 21:41
- 如何在Magento 1中的cms页面中设置产品限制magento1.9magentoproductmagentocmspages2019-12-05 21:43
- php:如何在表格magento 19中添加保存按钮magento1.9magentophpmagentoadminhtml2019-12-05 21:40
- magento 1.9:如何在我的自定义模块控制器中使用核心模块(observerphp)的动作方法。magento1.9magentophp2019-12-05 21:39
- php:覆盖Magento中的核心文件magento1.9magentophpmagentodatabasemagentojavascript2019-12-05 21:39
尝试更改类别集合,如下所示 -
Update to get parent level categories only 将您的类别集合更改为以下代码