2013-03-15 63 views
1

当前我想在菜单选项卡上添加一个新的菜单链接,但可以在不更改其他模块模板的情况下完成,但只需在模块内部添加?我想这样做的原因是因为我希望当我禁用我的模块时,菜单链接也将消失。Magento在模块内添加新的菜单项

page.xml(其他模块布局文件)

<block type="page/html_header" name="header" as="header"> 
       <block type="page/template_links" name="top.links" as="topLinks"/> 
       <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/> 
       <block type="core/text_list" name="top.menu" as="topMenu" translate="label"> 
        <label>Navigation Bar</label> 
        <block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/> 
       </block> 
       <block type="page/html_wrapper" name="top.container" as="topContainer" translate="label"> 
        <label>Page Header</label> 
        <action method="setElementClass"><value>top-container</value></action> 
       </block> 
      </block> 

referral.xml(我的模块) ??? 我该怎么办? enter image description here

topmenu.phtml

<?php $_menu = $this->getHtml('level-top') ?> 
    <?php if($_menu): ?> 
    <div class="nav-container"> 
     <ul id="nav"> 
      <?php $active = is_numeric(stripos($_SERVER['REQUEST_URI'], 'aboutus')) ? 'active' : ''; ?> 
      <li class="level0 nav-2 last level-top <?php echo $active; ?>"> 
       <a class="level-top" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);?>aboutus"> 
        <span>About Us</span> 
       </a> 
      </li> 
      <?php echo $_menu ?> 
      <?php $active = is_numeric(stripos($_SERVER['REQUEST_URI'], 'redemption/store')) ? 'active' : ''; ?> 
      <li class="level0 nav-2 last level-top <?php echo $active; ?>"> 
       <a class="level-top" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);?>redemption/store"> 
        <span>Redemption Store</span> 
       </a> 
      </li> 

回答

0

这看起来像一个自定义导航对我来说,有没有办法,开箱项添加到主导航(无类别的项目反正)。

默认情况下,它只会显示类别,所以你的看起来像它可能被硬编码到模板中。

已经使用了很多模块和主题,如果是通过XML配置或管理选项添加链接的附加功能的自定义主题,我会非常惊讶。

你可以从我的topmenu.phtml文件中发布一些代码,然后我可以为你提供最好的操作。

0

为此,您必须在自定义模块中编写导航类,该类将扩展Mage_Catalog_Block_Navigation,该类是您需要在本地导航类中重写的函数(renderCategoriesMenuHtml)。 但问题是,实时用户大多有不同的主题,他们改变类等,这可能会在设计实现中发生冲突。