我正在编写一个Magento Extension,试图在结帐购物车页面上隐藏折扣代码部分。我编写了以下代码,用我的自定义模板替换当前的cart.phtml。
<layout version="0.1.0">
<checkout_cart_index>
<reference name="checkout.cart">
<action method="setTemplate">
<template>company/module/cart.phtml</template>
</action>
</reference>
</checkout_cart_index>
</layout>
一切看起来都不错,直到我意识到它甚至覆盖了购物车页面用于空车的模板。我尝试了很多组合来切换“checkout_cart_index” 命名为引用名称,但我不能让它只是替换该模板。我进一步调查并发现它在默认布局中设置了购物车价值:
<reference name="content">
<block type="checkout/cart" name="checkout.cart">
<action method="setCartTemplate"><value>checkout/cart.phtml</value></action>
<action method="setEmptyTemplate"><value>checkout/cart/noItems.phtml</value></action>
我再次尝试使用“SetCartTemplate”,但我无法让它显示单独行为,因为我打算。有什么想法吗?
答案 0 :(得分:2)
In your layout update
<checkout_cart_index>
<reference name="checkout.cart">
<action method="setCartTemplate"><value>path/to/your/cart.phtml</value></action>
<action method="setEmptyTemplate"><value>path/to/your/noItems.phtml</value></action>
<action method="chooseTemplate"/>
</reference>
</checkout_cart_index>
chooseTemplate将选择正确的模板
答案 1 :(得分:0)
尝试重写此核心类以隐藏购物车页面中的折扣代码部分
Mage_Sales_Model_Quote_Address_Total_Discount