0

Magento カテゴリのすべてのサブカテゴリを取得して、その名前と画像を表示しようとしています。

これまでのところ、私は持っています:

$children = Mage::getModel('catalog/category')->getCategories(28);

foreach ($children as $category) {
    echo "name: " . $category->getName() . "<br>"; 
    echo "image: " . $category->getImageUrl() . "<br>"; 
}

$category->getName()動作しますが、$category->getImageUrl()動作していないようです。

カタログ/カテゴリ モデルのMagento ドキュメントリファレンスに従っています (上部にある Mage:Catalog を参照してから、横にある Mage_Catalog_Model_Category を参照してください)。

それはクラスの利用可能なメソッドであると明確に述べていstring getImageUrl ()ますが、明らかに呼び出すことはできません。

上記でこのメソッドが利用できない理由と、より一般的には、多くのメソッドがクラスから利用できないように見える理由を知りたいので、将来これらの繰り返し発生する問題を解決する方法を理解できます.

したがって、私の質問は、上記のgetImageUrlメソッドを使用可能にするために何が必要であり、一般的に、ドキュメントにあるがMagentoフレームワークの「デフォルト」では使用できない他のメソッドを作成するために追加する必要があるものを特定するにはどうすればよいですか?

どんな助けでも大歓迎です。ありがとう。

4

1 に答える 1

1

それを試してみてください:-

<?php
    //gets all sub categories of parent category
    $cats = Mage::getModel('catalog/category')->load(6)->getChildren();
    $catIds = explode(',',$cats);

    $categories = array();
    foreach($catIds as $catId) {
        $category = Mage::getModel('catalog/category')->load($catId); 
        $categories[$category->getName()] = array(
            'url' => $category->getUrl(),
            'img' => $category->getImageUrl()
        );
    }

    ksort($categories, SORT_STRING);
?>
    <ul>
        <?php foreach($categories as $name => $data): ?>
            <li>
                <a href="<?php echo $data['url']; ?>" title="<?php echo $name; ?>">
                    <img class="cat-image" src="<?php echo $data['img']; ?>" />
                </a>
            </li>   
        <?php endforeach; ?>
    </ul>
于 2012-10-03T16:34:43.627 に答える