Email Magento获取付款信息阻止电子邮件上的最后订单Id

Email Magento获取付款信息阻止电子邮件上的最后订单Id,email,magento,block,payment,Email,Magento,Block,Payment,以上是Magento新订单确认电子邮件的图片。 在我们正在开发的网站上,我们使用Fontis Australia extension()实现BPay支付方法。扩展工作正常,除了订单确认电子邮件上的电子邮件参考始终显示000000 我试着查看它,发现生成的ref编号需要订单ID作为输入来生成正确的ref编号。 扩展使用此代码获取付款信息块上的最后订单号: $order_id=Mage::getSingleton('checkout/session')->getLastRealOrderId() 我

以上是Magento新订单确认电子邮件的图片。 在我们正在开发的网站上,我们使用Fontis Australia extension()实现BPay支付方法。扩展工作正常,除了订单确认电子邮件上的电子邮件参考始终显示000000

我试着查看它,发现生成的ref编号需要订单ID作为输入来生成正确的ref编号。 扩展使用此代码获取付款信息块上的最后订单号: $order_id=Mage::getSingleton('checkout/session')->getLastRealOrderId()

我尝试使用并打印来自其他控制器的结果,它显示正确的订单号。但对于电子邮件上的付款信息块,似乎无法检索订单号信息。实际上,同样的块也在checkout success页面上调用,并且显示正确


是否有人可以建议其他方法在Magento电子邮件的付款信息块上获取最后一个订单id?

在信息模板中,您可以使用
$order=$this->getInfo()->getOrder()
获取
Mage\u Sales\u Model\u订单
对象。然后您可以通过$
order->getData('increment\u id')
获取当前订单id

但使用此代码,您在签出过程中会出现错误,因为
$this->getInfo()
返回其他模型

所以,对我来说没有错误的肮脏解决方案是:

$info = $this->getInfo();   
if ($info instanceof Mage_Sales_Model_Order_Payment) {
    $order = $info->getOrder();
    echo $order->getData('increment_id'));
}