我需要在所有结帐(一页和购物车)上隐藏自定义功能块。
我应该如何编辑checkout.xml来隐藏它?
我尝试了<remove name="footer_newsletter"/>
,但它不起作用。奇怪的是,如果我把<remove name="footer" />
所有页脚都隐藏起来。
问题出在哪里?在块部分,ID和名称是footer_newsletter,所以没有错。
答案 0 :(得分:1)
首先删除您在checkout.xml上为Add theme.xml添加的更改到主题布局文件夹。 例如,在默认的magento主题中,它将位于app / design / frontend / default / default / layout
中在主题的布局文件夹中添加local.xml
。在这个local.xml中写下面的代码:
<?xml version="1.0"?>
<layout version="0.1.0">
<checkout_cart_index>
<reference name="footer">
<remove name="footer_newsletter"/>
</reference>
</checkout_cart_index>
<checkout_onepage_index>
<reference name="footer">
<remove name="footer_newsletter"/>
</reference>
</checkout_onepage_index>
</layout>
调用所有设计xml文件后,local.xml在最后一次运行。因此它将覆盖任何xml中所做的任何更改。
答案 1 :(得分:0)
尝试在checkout.xml中将要隐藏的块放在Comment中。
答案 2 :(得分:0)
你也可以在local.xml
中尝试这样的事情:
<your_desired_handle><!-- replace handle here -->
<reference name="parent_block_of_footer_newsletter"> <!-- replace with the name of the parent block that contains your footer_newsletter block -->
<action method="unsetChild"><alias>alias_of_footer_newsletter_block</alias></action> <!-- replace the alias with the value of "as" attribute of your footer_newsletter block, or it's name if it does not have an "as" attribute -->
</reference>
</your_desired_handle>