如何在magento的Topmenu中检索父类别图像?
在magento中如何检索顶部菜单中的父类别图像。我必须显示父类别的图像,当点击或鼠标在尊敬的父菜单。我尝试了下面提到的代码,但是我得到了所有的分类图片。如果我显示在前端,它会显示在受尊重的菜单下。有人能指导我如何显示正确的图像吗?我的magento版本是1.7.0.2 $categoryData=数组(如何在magento的Topmenu中检索父类别图像?,magento,zend-framework,menu,magento-1.7,categories,Magento,Zend Framework,Menu,Magento 1.7,Categories,在magento中如何检索顶部菜单中的父类别图像。我必须显示父类别的图像,当点击或鼠标在尊敬的父菜单。我尝试了下面提到的代码,但是我得到了所有的分类图片。如果我显示在前端,它会显示在受尊重的菜单下。有人能指导我如何显示正确的图像吗?我的magento版本是1.7.0.2 $categoryData=数组( 我想使用缩略图图像来显示。提前感谢…最后我找到了解决方案并分享了下面的答案。我可以使用“getLevel”属性来查找所有菜单的位置。然后我找到父菜单并在Topmenu中显示受尊敬的图像 它被添
我想使用缩略图图像来显示。提前感谢…最后我找到了解决方案并分享了下面的答案。我可以使用“getLevel”属性来查找所有菜单的位置。然后我找到父菜单并在Topmenu中显示受尊敬的图像 它被添加到模型文件中。(/app/code/core/Mage/Catalog/Model/Observer.php) 函数名:\u添加分类菜单
$categoryData = array(
'name' => $category->getName(),
'id' => $nodeId,
'url' => Mage::helper('catalog/category')->getCategoryUrl($category),
'is_active' => $this->_isActiveMenuCategory($category),
'links' => $cat->getData('links'),
'image' => $cat->getImageUrl('image'),
'thumbnail' => $cat->getThumbnail(),
'getLevel' => $category->getLevel()
);
$categoryData = array(
'name' => $category->getName(),
'id' => $nodeId,
'url' => Mage::helper('catalog/category')->getCategoryUrl($category),
'is_active' => $this->_isActiveMenuCategory($category),
'thumbnail' => Mage::getModel('catalog/category')->load($category->getId())->getThumbnail()
);
它被添加到Html文件夹中
函数名:\u getHtml
$parentLevels = $child->getLevel();
if($parentLevels == 0)
{
$urls = Mage::getBaseUrl('media').'catalog/category/'.$child->getData('thumbnail');
$html .= '<img src="'.$urls.'" />';
}
$parentLevels=$child->getLevel();
如果($parentLevels==0)
{
$urls=Mage::getBaseUrl('media')。'catalog/category/'。$child->getData('缩略图');
$html.='';
}
此解决方案适用于Magento-1.8*
在模型文件中。(/app/code/core/Mage/Catalog/Model/Observer.php)
更新函数名中的以下代码:\u addCategoriesToMenu
$categoryData = array(
'name' => $category->getName(),
'id' => $nodeId,
'url' => Mage::helper('catalog/category')->getCategoryUrl($category),
'is_active' => $this->_isActiveMenuCategory($category),
'links' => $cat->getData('links'),
'image' => $cat->getImageUrl('image'),
'thumbnail' => $cat->getThumbnail(),
'getLevel' => $category->getLevel()
);
$categoryData = array(
'name' => $category->getName(),
'id' => $nodeId,
'url' => Mage::helper('catalog/category')->getCategoryUrl($category),
'is_active' => $this->_isActiveMenuCategory($category),
'thumbnail' => Mage::getModel('catalog/category')->load($category->getId())->getThumbnail()
);
然后进入Html文件夹
更新中第128行的以下代码行
函数名:_getHtml
if($childLevel < 1 ){
$urls = Mage::getBaseUrl('media').'catalog/category/'.$child->getData('thumbnail');
$img = '<img src="'.$urls.'" />';
}
$html .= '<li ' . $this->_getRenderedMenuItemAttributes($child) . '>';
$html .= '<a href="' . $child->getUrl() . '" ' . $outermostClassCode . '><span>'
. $this->escapeHtml($child->getName()) . ' </span> '.$img.' </a>';
if($childLevel<1){
$urls=Mage::getBaseUrl('media')。'catalog/category/'。$child->getData('缩略图');
$img='';
}
$html.=';
$html.='';
在该函数中使用->load()是一个非常糟糕的主意,因为它将一次又一次地循环。