2012-04-12 9 views
0

各カテゴリとサブカテゴリ名の隣に小さい画像アイコンを配置したい(カテゴリ名の後に画像を置くだけでカテゴリ名を置き換えない) 。私はすでにオーバーライド試みたAPP /コア/コード/メイジ/カタログ/ブロックは/ Navigation.php Magento - 画像をトップカテゴリのメニュー名の隣に配置

I背景画像を追加しようとしていたStyles.cssを内referncingれCATEGORY_ID後のコードがあった場合、私が_renderCategoryMenuItemHtmlを変更

$htmlLi .= '>'; 
$html[] = $htmlLi; 

$html[] = '<a href="'.$this->getCategoryUrl($category).'"'.$linkClass.'>'; 
$html[] = '<span>' . $this->escapeHtml($category->getName()) . '</span>'; 
$html[] = '</a>'; 

$htmlLi .= '>'; 
$html[] = $htmlLi; 

$html[] = '<a href="'.$this->getCategoryUrl($category).'"'.$linkClass.'>'; 
$html[] = '<span class="category_'.$this->getCurrentCategory()->getId().'">'.$this->escapeHtml($category->getName()).'</span>'; 
$html[] = '</a>'; 

しかし、くぼみの仕事と

。多くの人が、カテゴリ名の直後に小さいサムネイル画像を表示したかったでしょう。しかし、それをやるための簡単な方法や簡単な方法は知らないだけです。

何か助けていただければ幸いです。ありがとう。

答えて

1

なぜCSSの背景画像を使用しないのですか?

ロードアップテンプレート/カタログ/ナビゲーション/ top.phtml、多分何かのように、各レベルの< LI>項目のための新しいクラスやIDに追加します。その後、あなたのCSSにこれらのクラスを追加

class="nav-<?php echo $_category->getName() ?>" 

、すなわち:

.nav-shoes { background: url(images/nav-shoes.png) no-repeat; } 

またはより良い、使用したいすべての画像とスプライト画像を構築:

[class^="nav-"] { background: url(images/sprite.png) no-repeat; } 
.nav-shoes { background-position: 10px 10px; } 

そして、それぞれの画像について把握する必要があるのは、背景の位置です。

0

Magento -1.8用にこのソリューションを使用してください。*

Go intpモデルファイル。関数名に(/app/code/core/Mage/Catalog/Model/Observer.php)

:_addCategoriesToMenu

更新次のコード

$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フォルダに入ります。 (アプリケーション/コード/コア/メイジ/ページ/ブロック/ HTML/Topmenu.php)関数名にライン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>';