Magento顶部导航 - 在Level1项目末尾添加Level0导航的"购买所有样式"链接



有没有办法在导航级别1 lis的末尾包含一个'Shop all (parent category)'链接,而无需通过添加另一个名为"购买所有..."的类别来执行此操作

例如:

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 ?>

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

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

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

 $this->renderCategoriesMenuHtml()

取而代之的是,在每个类别级别上运行一些 foreach 循环。

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

    <?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; ?>

相关内容

  • 没有找到相关文章

最新更新