【发布时间】:2012-02-09 04:59:56
【问题描述】:
我正在为 Magento 实现自己的支付模块,在我的支付模型中实现了 getCheckoutRedirectUrl() 方法。
class My_Module_Model_Payment extends Mage_Payment_Model_Method_Abstract {}
这个方法应该只返回用户被重定向到的支付网关的 URL,但我还应该将当前 orderId 附加到这个 URL。
问题是无法获取 orderId。我已经尝试过解决方案accepted here
$orderId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
但我得到了空的 $orderId。所以这在我的方法中似乎不起作用。调用不会产生错误,所以我得到一个对象(例如 Mage::getSingleton('checkout/session')->getQuote()->getSubtotal() 返回订单金额),但 orderId 为空。
我也试过了:
$order = Mage::getModel('sales/order');
$order->load(Mage::getSingleton('sales/order')->getLastOrderId());
$orderId = $order->getIncrementId();
再次返回空的 $orderId。
有什么想法吗?
【问题讨论】:
标签: php magento e-commerce payment gateway