0

有没有办法'Shop all (parent category)'在导航 level1 lis 的末尾包含一个链接,而无需添加另一个名为“shop all ...”的类别

例如:

Tops:
     T-Shirts
     Tanks
     Jackets
     Shop All Tops <- Dynamically add this which links to the Tops parent category.

top.phtml 只包含

<?php $_menu = $this->renderCategoriesMenuHtml(0,'level-top') ?>
<?php if($_menu): ?>
<div class="nav-container">
    <ul id="nav">
        <?php echo $_menu ?>
    </ul>
</div>
<?php endif ?>

<li>在 echo $_menu 之后添加一个将其添加到 level0 的末尾。renderCategoriesMenuHtml 函数位于 Navigation.php 文件中,该文件包含所有函数。

基本上我想找到父类别,将其存储在一个变量中并在 level1 列表项的末尾回显它(和链接),但不知道是否有 .phtml 文件允许我这样做。

4

2 回答 2

1

不幸的是,您几乎无法使用默认模板来自定义导航菜单。您最好的选择是重写模板以满足您的需求,放弃:

 $this->renderCategoriesMenuHtml()

相反,在每个类别级别上运行一些 foreach 循环。

于 2012-08-09T20:01:28.717 回答
0

通过将 top.phtml 中的所有内容替换为以下内容,我得到了我想要的结果。它为 level0 和 level1 保持相同的类以及锚标记内的 span 结构,以便保留任何以前的样式。

    <?php $_helper = Mage::helper('catalog/category') ?>
<?php $_categories = $_helper->getStoreCategories() ?>
<?php $currentCategory = Mage::registry('current_category') ?>
<?php if (count($_categories) > 0): ?>
<div class="nav-container">   
 <ul id="nav">
        <?php foreach($_categories as $_category): ?>
            <li class="level0 level-top first parent">
                <a href="<?php echo $_helper->getCategoryUrl($_category) ?>">
                   </span> <?php echo $_category->getName() ?></span>
                </a>
                <?php $_category = Mage::getModel('catalog/category')->load($_category->getId()) ?>
                <?php $_subcategories = $_category->getChildrenCategories() ?>
                <?php if (count($_subcategories) > 0): ?>
                    <ul>
                        <?php foreach($_subcategories as $_subcategory): ?>
                            <li class="level1">
                                <a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>">
                                   <span><?php echo $_subcategory->getName() ?></span>
                                </a>
                            </li>
                        <?php endforeach; ?>
<li><a href="<?php echo $_helper->getCategoryUrl($_category) ?>"><span>Shop all <?php echo $_category->getName() ?></span></a></li>
                    </ul>
                <?php endif; ?>
            </li>
        <?php endforeach; ?>
    </ul>
</div>
<?php endif; ?>
于 2012-08-10T03:17:39.500 回答