我的导航栏已应用于我的网站,代码如下:
<!-- 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>
我做错了什么?
答案 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>