我正在研究this。如果我们去特定产品,那么产品将完美展示。但是,如果我们通过在搜索列中书写找到任何产品,它将显示为this。呈现此显示的页面是相同的。我猜这个问题出在“$ parentId = Mage :: registry('current_category') - > getParentId();”问题是“当前类别”。请建议一些if条件,以便它显示导航和搜索项目的内容。我的代码是这样的。请帮帮我。
<?php
$parentId = Mage::registry('current_category')->getParentId();
$parent = Mage::getModel('catalog/category')->load($parentId);
$parentname = $parent->getName();
?>
答案 0 :(得分:0)
当您从类别页面转到产品页面时,Magento会保存该路径,它也会显示在url和breadcrumbs中。当您直接进入产品页面时,Magento对当前类别一无所知,因为产品可能有许多类别或根本没有类别。
您可以尝试从注册表中获取当前类别,然后检查它是否为null:
$currentCat = Mage::registry('current_category');
if ($currentCat) {
$parent = Mage::getModel('catalog/category')->load($currentCat->getParentId());
//do what you need with parent
}
如果产品页面布局需要,您还可以通过获取所有类别的当前产品并获取其中一个类别的父类别来获取某些父类别。