Magento顶部导航-添加';购买所有款式';1级项目末尾的0级导航链接
是否有一种方法可以在导航级别1 lis的末尾包含一个Magento顶部导航-添加';购买所有款式';1级项目末尾的0级导航链接,magento,navigation,Magento,Navigation,是否有一种方法可以在导航级别1 lis的末尾包含一个'Shop all(父类别)链接,而无需添加另一个名为'Shop all…'的类别 例如: top: T恤衫 坦克 夹克 选购所有上衣 在echo$\菜单后添加会将其添加到级别0的末尾。RenderCategoriesMemuHTML函数位于Navigation.php文件中,该文件仅包含所有函数 基本上,我想找到父类别,将其存储在一个变量中,并在level1列表项的末尾回显它(和链接),但不知道是否有一个.phtml文件允许我这样做。不
'Shop all(父类别)
链接,而无需添加另一个名为'Shop all…'的类别
例如:
top:
T恤衫
坦克
夹克
选购所有上衣
在echo$\菜单后添加
会将其添加到级别0的末尾。RenderCategoriesMemuHTML函数位于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; ?>
我很害怕。谢谢。你可以构建一个新的模块,用一个提供一定灵活性的模块重写这个通用方法。另外,好的一面是,重写模板并构建无javascript的导航菜单有点令人满意。谢谢。我添加了我的解决方案作为对这个问题的回答。我对模块没有信心,所以我只是编辑了top.phtml.Google silk软件模块创建者。虽然生成的一些代码有问题,但它通常为您自己解决问题提供了一个坚实的起点。是的,你发布的模板基本上就是你必须做的。如果必须在Nava3中深入几个层次,GETMODEM()的规定会变得烦人,所以如果值得花时间来构建自己的模型,那么就要考虑一些问题。
$this->renderCategoriesMenuHtml()
<?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; ?>