我在Magento商店有一个产品。它属于C类。
我的架构是 A类> B类> C类。
使用下面的代码,在“产品”页面上显示“类别B”。我如何调整以下代码以显示 A类?
if(Mage::registry('current_product')) {
$_category = Mage::registry('current_category');
$parentCategoryId = $_category->getParentId();
$parentCategory = Mage::getModel('catalog/category')->load($parentCategoryId);
$url = strtolower(str_replace(" ","-",$parentCategory->name));
echo '<a href="/'.$url.'">'.$parentCategory->name.'</a>';
}
我原本想过用URL中的'/'来改变我的代码。
非常感谢您提出的任何指示。
答案 0 :(得分:2)
C类的父类别是类别B ,而不是类别A 。要获取给定产品的顶级父类别,您需要爬上类别树:
$category = Mage::registry('current_category');
while ($category->getLevel() != 2) {
$category = Mage::getModel('catalog/category')->load($category->getParentId());
}
每个类别都有一个级别:级别1是目录根目录,级别2是顶级类别,级别2上的任何内容都是子类别。