Magento优惠券折扣

时间:2013-01-12 18:56:53

标签: php magento coupon

我正在设立magento商店,从顾客那里购买东西。我想使用优惠券代码来提高产品的价格,而不是降低产品的价格。我需要在哪个文件中进行更改。

更新1:

谢谢阿米特。 我有另一个问题。我喜欢在购物车和单页结账时将“折扣”更改为“促销”。但是,我找不到任何文件位置。我已打开配置中的模板路径提示。任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

如果您只需要固定金额折扣,那么您可以删除折扣金额的验证字段,以便您可以在此字段中添加负值,因此当您尝试应用此优惠券时,它会自动添加该金额而不是减少。所以你需要覆盖以下两个类。

有关Magento覆盖的详细信息,请参阅this链接。

Mage_Adminhtml_Block_Promo_Quote_Edit_Tab_Actions 

找到这段代码

$fieldset->addField('discount_amount', 'text', array(
            'name' => 'discount_amount',
            'required' => true,
            'class' => 'validate-not-negative-number',
            'label' => Mage::helper('salesrule')->__('Discount Amount'),
        ));

并将其更改为

$fieldset->addField('discount_amount', 'text', array(
            'name' => 'discount_amount',
            'required' => true,
            'label' => Mage::helper('salesrule')->__('Discount Amount'),
        ));

并删除以下代码

if ($this->hasDiscountAmount()) {
            if ((int)$this->getDiscountAmount() < 0) {
                Mage::throwException(Mage::helper('rule')->__('Invalid discount amount.'));
            }
        }

Mage_Rule_Model_Abstract::_beforeSave()

答案 1 :(得分:0)

查看Mage / Checkout / Controllers中的CartController.php以及带有methode -collectTotals()的Mage_Sales_Model_Quote模型。

您需要创建一个新模块,您可以在其中覆盖模型或创建观察者。