0

各 Magento ページのヘッダーにあるドロップダウン メニューを作成しようとしています。すべてのカテゴリ、サブカテゴリ、およびそれぞれに関連付けられた画像を一覧表示したいと考えています。インターネットからコードをスクレイピングして結合することで、サブカテゴリの URL のみが未定義として返され、その理由がわかりません。何か案は?これが私のコードです:

<?php
    $cats = Mage::getModel('catalog/category') -> load(2) -> getChildren();
    $catIds = explode(',', $cats);
    $categories = array();
    foreach ($catIds as $catId) {
        $category = Mage::getModel('catalog/category') -> load($catId);
        $categories[$category -> getName()] = array('name' => $category -> getName(), 'url' => $category -> getUrl(), 'img' => $category -> getImageUrl(), 'subcategories' => Mage::getModel('catalog/category') -> getCategories($catId));
    }
    ksort($categories, SORT_STRING);
?>
<ul>
    <?php foreach($categories as $name => $data): ?>
        <li><?php echo $data['name']; ?>
            <a href="<?php echo $data['url']; ?>" title="<?php echo $name; ?>">
                <img class="cat-image" src="<?php echo $data['img']; ?>" />
            </a>
            <ul>
            <?php
                foreach ($data['subcategories'] as $subcategory) {
                    echo "<a href='" . $subcategory -> getUrl() . "'><li>" . $subcategory -> getName() . "</li></a>";
                }
            ?>
            </ul>
        </li>
    <?php endforeach; ?>
</ul>
4

1 に答える 1

1

変更してみる

 'subcategories' => Mage::getModel('catalog/category') -> getCategories($catId)

  'subcategories' => $category->getChildrenCategories()

Magento でサブカテゴリを取得する方法を参照してください?`

于 2013-01-28T20:34:26.173 に答える