从帐户页面中删除块

时间:2011-10-16 19:40:35

标签: php magento

我的导航栏已应用于我的网站,代码如下:

<!-- catalog.xml -->
<default>
    <reference name="left">
        <block type="catalog/navigation" name="catalog.leftnav" template="catalog/navigation/left.phtml"/>
    </reference>
</default>

但我不希望它出现在帐户页面上。我尝试了以下方法,但它不起作用。

<!-- customer.xml -->
<default>
    <reference name="left">
        <action method="unsetChild"><name>catalog.leftnav</name></action>
    </reference>
</default>

我做错了什么?

2 个答案:

答案 0 :(得分:1)

具有此类事物的奖励通常是更新的应用顺序。 customer.xml中指定的默认句柄中的更新可能在更新之前应用于catalog.xml中指定的默认句柄中。因此首先调用unsetChid,然后在catalog.xml中添加该块。

将所有更新放在local.xml中的另一个原因(local.xml中的更新始终最后加载,这意味着(在一个句柄中),local.xml中的更新将最后运行)

答案 1 :(得分:0)

在您的customer.xml中应用<remove name="catalog.leftnav"/>,这将删除该块。

<!-- customer.xml -->
<default>
    <reference name="left">
             <remove name="catalog.leftnav"/>
     </reference>
</default>

编辑: -

只想从帐户页面中删除 为此,您需要将其从<customer_account>

中删除
 <customer_account translate="label">
         <reference name="left">
                 <remove name="catalog.leftnav"/>
         </reference>
  </customer_account>