Magento 使用local.xml从顶部菜单删除链接

Magento 使用local.xml从顶部菜单删除链接,magento,Magento,有人知道如何使用local.xml从顶部菜单中删除链接吗 在default checkout.xml中有: <reference name="top.links"> <block type="checkout/links" name="checkout_cart_link"> <action method="addCartLink"></action> <action method="addChecko

有人知道如何使用local.xml从顶部菜单中删除链接吗

在default checkout.xml中有:

<reference name="top.links">
    <block type="checkout/links" name="checkout_cart_link">
        <action method="addCartLink"></action>
        <action method="addCheckoutLink"></action>
    </block>
</reference>

我想从顶部菜单中删除addCartLink。一种方法是编辑checkout.xml文件,但它认为将remove添加到我的local.xml文件中是一个更好的解决方案,但我似乎找不到要删除的正确名称。如果我做一个

<layout>
    <default>
        <remove name="top.links" />
    </default>
</layout>

这确实会删除整个菜单,但是如何使用locale.xml仅从菜单中删除单个项目呢

我正在使用Magento 1.6,它应该是:

<layout>
     <default>
        <reference name="top.links">
            <reference name="checkout_cart_link">
                <remove name="top-link-cart" />
            </reference>
        </reference>
     </default>
</layout>


但您始终可以复制本地主题中的checkout.xml并对其进行编辑。

您可以在local.xml中执行此操作:

<default>
  <reference name="top.links"> 
    <action method="removeLinkByUrl">
      <url helper="checkout/url/getCartUrl" />
    </action> 
  </reference>
</default>


愿望列表链接
将此部分添加到您的local.xml。在默认情况下写入此项将从每页中删除它。因此,相应地调整它。我希望这将对您有所帮助。


<default>
<reference name="top.links">
    <remove name="wishlist_link"/>
</reference>
</default>

将此部分添加到您的local.xml。这对我很有用。只需使用“删除”。就是这样。

您好,这将从1.9.3中的top.links中删除购物车和结帐链接

<reference name="top.links"> 
  <action method="removeLinkByUrl">
    <url helper="checkout/url/getCartUrl" />
  </action>
  <action method="removeLinkByUrl">
    <url helper="checkout/url/getCheckoutUrl" />
  </action>
</reference>


基于上述最佳答案,但如果有人想同时删除这两个链接,您可以通过布局更新删除链接

  • 按名称|调用removeLinkBlock($blockName)
  • 通过其url调用removeLinkByUrl($url)
  • 在添加文件时覆盖该文件
  • 这些函数存在于
    Mage\u Page\u Block\u Template\u链接中

    选项1

    removeLinkByUrl()函数需要一个url作为参数,该参数通常由相应扩展中的帮助函数提供。只要抓住它,你就可以用

    <reference name="top.links">
          <action method="removeLinkByUrl"><url helper="customer/getRegisterUrl"/></action>
       </reference>
    
    选项2

    如果链接添加了名称,如

    <reference name="top.links">
       <block type="wishlist/links" name="wishlist_link" />
       <action method="addLinkBlock"><blockName>wishlist_link</blockName></action>
    </reference>
    
    
    愿望列表链接
    
    你可以用

    <reference name="top.links">
       <remove name="wishlist_link"/>
    </reference>
    
    
    

    <default>
     <reference name="top.links">
        <block type="wishlist/links" name="wishlist_link"/>
        <action method="removeLinkBlock"><blockName>wishlist_link</blockName></action>
     </reference> 
    </default>
    
    
    愿望列表链接
    
    选项3


    如果您的链接没有添加名称,并且硬编码的url由于某种原因不起作用,您可以继续将modules layout.xml复制到您的自定义主题文件夹中,并删除添加链接的行。

    这不起作用-(我知道我可以复制和编辑checkout.xml,但我正试图避免复制和编辑不同的文件,只是为了控制菜单。但也许我必须这样做。此代码将用remove=“1”标记名为“top link cart”的块属性,这意味着它将不会被呈现。是的,但我不想删除块。我想删除块中的链接。免费的“”扩展允许您从控制面板执行此操作。供我这样的人参考:此代码适用于1.3.x,似乎会在1.8中导致错误。Nikhil_K_R的答案适用于我ng by Novely:这在1.9.x上非常有效。免费的“”扩展允许您从控制面板执行此操作。谢谢。对于删除购物车相关项目也很有用。
    <reference name="top.links">
       <remove name="wishlist_link"/>
    </reference>
    
    <default>
     <reference name="top.links">
        <block type="wishlist/links" name="wishlist_link"/>
        <action method="removeLinkBlock"><blockName>wishlist_link</blockName></action>
     </reference> 
    </default>