0

あなたにアイデアを与えるためだけに。私は3つのレベルのカテゴリーを持っています。
トップレベル>サブカテゴリ>サブカテゴリの子

表示したくないのは、サブカテゴリの子です。

以下のコードは、すべてのカテゴリを示しています。(ペーストがうまくフォーマットされなかったのは残念です。)

<?php
// ----   PRODUCT NAVIGATION ---- \\
$nav_obj = new Mage_Catalog_Block_Navigation();
$store_cats = $nav_obj->getStoreCategories();
$current_cat = $nav_obj->getCurrentCategory();
?>

<ul>

<?php foreach ($store_cats as $cat):?>
<?php
$ids = strtolower(str_replace(" ", "_", $cat->getName()));
$ids = str_replace("&", "", $ids);
?>


<li class="parent" id="<?php echo $ids; ?>"><?php echo $cat->getName()?>

<ul>
<?php foreach (Mage::getModel('catalog/category')->load($cat->getId())->getChildrenCategories() as $childCategory): ?>
<li><a href="<?php echo $childCategory->getUrl(); ?>">
<?php echo $childCategory->getName()?></a></li>
<?php endforeach; ?>
</ul>
</li>

<?php endforeach; ?>
4

1 に答える 1

0

私が取り組んでいるのと同じようなものがあります。私は基本的に各カテゴリを渡し、レンダリングしたいものをレンダリングしています:

<?php # get category list ?>
<?php $_helper = Mage::helper('catalog/category') ?>
<?php $_categories = $_helper->getStoreCategories() ?>

<?php foreach($_categories as $_category) : ?>
    <?php # turn it into the proper model object ?>
    <?php $_category = Mage::getModel('catalog/category')->load($_category->getId()) ?>
    <a href="<?php echo $_category->getUrl() ?>"><?php echo $_category->getName() ?></a>         
    <?php foreach($_category->getChildrenCategories() as $_subCategory) : ?>
         <a href="<?php echo $_subCategory->getUrl() ?>"><?php echo $_subCategory->getName() ?></a>
    <?php endforeach ?>
<?php endforeach ?>
于 2012-05-08T19:30:52.667 に答える