0

我正在尝试更改顶级链接结构。我不想在默认主题中弄乱 xml 文件。我只有一个包含所有内容的 xml 文件。我不想在我的主题布局文件夹中创建多个 xml 文件。我正在尝试取消 top.links 块内的操作。

这是我想要做的方式:

<reference name="top.links">
  <action method="unsetChild"><child>addLink</child></action>
      <!--  <remove name="checkout_cart_link" /> -->
</reference>

当我放置删除标签时,它可以完美运行。但是,当我尝试为 addLink 操作执行 unsetChild 时,它不起作用。你知道我应该如何解决这个问题吗?我不想要与默认主题中名称相同的单独 xml 文件。

4

1 回答 1

2

unsetChild函数来自抽象块模型,用于删除当前块的子块。具有名称的块top.links没有称为 addLink 的子块,因此您的配置没有做任何事情。具有该方法的操作节点addLink调用块上的 addLink 函数Mage_Page_Block_Template_Links。如果目标是删除其中一个链接,则需要使用 action removeLinkByUrl

<reference name="top.links">
  <action method="removeLinkByUrl"><url>link/here</url></action>
</reference>

确切的论点显然取决于您要删除的链接。

于 2012-10-01T13:06:38.407 回答