2011-07-14 5 views
0

私はメインカテゴリーとこのカテゴリーのいくつかのサブカテゴリーを持っています。メインカテゴリーのリンクにアクセスしたときにこのカテゴリーのサブカテゴリーを示したかったのです。サブカテゴリーmagentoの説明を表示する方法

私は静的なブロックと1つのphtmlファイルを作成しました。サブカテゴリをメインカテゴリページにサブカテゴリの名前と画像とともに表示できますが、カテゴリの説明も表示する必要がありますが、サブカテゴリの説明。

これは私がPHTMLファイルに持っているもの

<?php $_categories=$this->getCurrentChildCategories()?> 
<?php if($_categories->count()): ?> 
<table style="width:80%"> 
<?php foreach ($_categories as $_category): ?> 
<?php if($_category->getIsActive()): ?> 

<tr class="<?php echo $this->htmlEscape($_category->getUrlKey()) ?>"> 
<?php 
if ($_imgUrl = $_category->getImageUrl()) { 
     $_imgHtml = '<img src="'.$_imgUrl.'" alt="'.$this->htmlEscape($_category->getName()).'" title="'.$this->htmlEscape($_category->getName()).'" />'; 

    } 
?> 
<td valign="middle" align="left" style="padding-bottom:40px"> 
    <a href="<?php echo $this->getCategoryUrl($_category) ?>"> 
     <?php echo $_imgHtml; ?> 
    </a> 
</td> 
<td valign="top" align="left" > 
    <a valign="bottom" href="<?php echo $this->getCategoryUrl($_category) ?>"> 
     <?php echo $this->htmlEscape($_category->getName()) ?>  
    </a> 
    <?php echo $this->htmlEscape($_category->getDescription()) ?> 
</td> 

</tr> 
<?php endif; ?> 
<?php endforeach ?> 
</table> 
<? endif; ?> 

あるしかし、あなたは、私が説明を取得するために

$_category->getDescription()を使用見ることができるように、サブカテゴリーの説明が表示されていません。

こちらをご覧ください。あなたがそれらを現在のカテゴリを作成する必要があり、サブカテゴリーの説明を取得するために

- :

答えて

1

は、ソリューションを手に入れました。

ので、このコードは

$cur_category=Mage::getModel('catalog/category')->load($_category->getId()); 
$layer = Mage::getSingleton('catalog/layer'); 
$layer->setCurrentCategory($cur_category); 

現在のカテゴリとして、カテゴリを設定し、これはここで説明

<?php echo $this->getCurrentCategory()->getDescription() ?> 
+0

'getCurrentCategories()'のコレクションにdescription属性が追加されていないようです。あなたのソリューションでは、すべての属性を持つ新しいカテゴリオブジェクトをロードしています。レイヤに代入することなく '$ cur_category-> getDescription()'を使うことができます。 – clockworkgeek

+0

@clockworkgeek:ああ、本当です。この方法でも動作し、必要に応じて回答を自由に編集できます – Daric

0

を取得することは、完全な答えはどのようにしてあるforeachループの内側に配置する必要があります:

<?php $_categories=$this->getCurrentChildCategories()?> 
       <?php if($_categories->count()): ?> 
       <table style="width:80%"> 
       <?php foreach ($_categories as $_category): ?> 
       <?php if($_category->getIsActive()): ?> 

       <tr class="<?php echo $this->htmlEscape($_category->getUrlKey()) ?>"> 
       <?php 
       if ($_imgUrl = $_category->getImageUrl()) { 
        $_imgHtml = '<img src="'.$_imgUrl.'" alt="'.$this->htmlEscape($_category->getName()).'" title="'.$this->htmlEscape($_category->getName()).'" />'; 

       } 
       ?> 
       <td valign="middle" align="left" style="padding-bottom:40px"> 
       <a href="<?php echo $this->getCategoryUrl($_category) ?>"> 
        <?php echo $_imgHtml; ?> 
       </a> 
       </td> 
       <td valign="top" align="left" > 
       <a valign="bottom" href="<?php echo $this->getCategoryUrl($_category) ?>"> 
        <?php echo $this->htmlEscape($_category->getName()) ?>  
       </a> 
        <?php 
         $cur_category=Mage::getModel('catalog/category')->load($_category->getId()); 
          $layer = Mage::getSingleton('catalog/layer'); 
          $layer->setCurrentCategory($cur_category); 
        ?> 
        <?php echo $this->getCurrentCategory()->getDescription() ?> 
      </td> 

      </tr> 
      <?php endif; ?> 
      <?php endforeach ?> 
      </table> 
      <? endif; ?> 
関連する問題