Jag har arbetat med ett nytt Magento-projekt igår och vi ville visa en tumbild i navigationsmenyn. Vi har möjlighet att lägga till tumbild och huvudbild från Magento-backend, men Magento visar inte detta i menyn som standard.

Min Magento-version är 1.8, stegen är här:

1 Från backend lägg till miniatyrbild

2 – Kopiera /app/code/core/Mage/Catalog/Model/Observer.php till /app/code/local/Mage/Catalog/Observer.php och gör följande ändringar på funktionsnamnet: _addCategoriesToMenu

[sh lang=”php”]

$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()

[/sh]

);
lägg till ‘’thumbnail’ => Mage::getModel(‘catalog/category’)->load($category->getId())->getThumbnail()

Steg 3:

Kopiera app/code/core/Mage/Page/Block/Html/Topmenu.php till app/code/local/Mage/Page/Block/Html/Topmenu.php

Då gör följande ändringar i funktionen: _getHtml

[sh lang=”php”]


if($childLevel < 1 ){
$img_urls = Mage::getBaseUrl(‘media’).’catalog/category/’.$child->getData(‘thumbnail’);
$img = ‘<img src=”‘.$img_urls.'” />’;
}

$html .= ‘<li ‘ . $this->_getRenderedMenuItemAttributes($child) . ‘>’;
$html .= ‘<a href=”‘ . $child->getUrl() . ‘” ‘ . $outermostClassCode . ‘><span>’
. $this->escapeHtml($child->getName()) . ‘ </span> ‘.$img.’ </a>’;

[/sh]

Jag försökte först följa denna artikel: http://www.h-o.nl/blog/using_category_images_in_your_magento_navigation/

men fungerar inte för mig, så om ovanstående förslag inte fungerar, vänligen prova detta också