【问题标题】:I'm trying to add an arbitrary value to Magento checkout我正在尝试向 Magento 结帐添加任意值
【发布时间】:2014-04-15 14:23:26
【问题描述】:

我正在尝试在订单金额中添加任意金额

在这个文件中\app\code\core\Mage\Sales\Model\Order\Payment.php

在这个函数中

public function setOrder(Mage_Sales_Model_Order $order)
{

我尝试添加这两行

$this->_order->setBaseGrandTotal(29);

$this->_order->setGrandTotal(29);

为什么订单金额没有变为 29 美元?

这是将任意数量添加到订单价值的正确方法吗?

谢谢

【问题讨论】:

  • $this->_order->setGrandTotal() + 29
  • 是的 $this->_order->setGrandTotal(29) 至少应该设置为 29 不是吗?
  • 不知道,那个方法是怎么定义的?

标签: php magento checkout


【解决方案1】:

永远不要因为升级问题而像这样更改核心文件。

我建议使用观察者。 您可以监听事件 sales_quote_add_item 并以编程方式更改总计:

$observer->getEvent()->getQuoteItem()->setOriginalCustomPrice([your price]);

【讨论】:

    猜你喜欢
    • 2010-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 2018-01-16
    • 2016-03-03
    • 1970-01-01
    相关资源
    最近更新 更多