繁体   English   中英

Magento订购电子邮件

[英]Magento Order Emails

我正在使用magento 1.7。有人可以对此提供帮助/建议吗?

还使用EPDQ Barclaycard模块。

捕获付款似乎一切正常,但是当我结帐时,请填写所有详细信息,直到“付款信息”选择卡类型并点击“继续”,然后下订单已发送新订单电子邮件,但尚未付款!

无论如何,在通过Barclaycard捕获付款之前,可以防止这种情况发生吗?

我错过了什么吗?

提前致谢

Magento在下订单后立即发送电子邮件订单确认。 如果您在下订单但未付款后将用户重定向到付款网关,则需要修改付款模块以使用magento的付款重定向设置来使其忽略确认电子邮件(请参阅Mage_Checkout_Model_Type_OnepagesaveOrder()方法) )。

您应该看到一些类似的代码;

/**
 * a flag to set that there will be redirect to third party after confirmation
 * eg: paypal standard ipn
 */
$redirectUrl = $this->getQuote()->getPayment()->getOrderPlaceRedirectUrl();
/**
 * we only want to send to customer about new order when there is no redirect to third party
 */
if (!$redirectUrl && $order->getCanSendNewEmailFlag()) {
    try {
        $order->sendNewOrderEmail();
    } catch (Exception $e) {
        Mage::logException($e);
    }
}

因此,这为您提供了一些选择。 扩展您的付款模块,以便它设置定单重定向网址,但这可能会使您的付款模块混乱,具体取决于它的编码方式,或者您可以将上述类扩展到您自己的模块中(不要修改核心),覆盖saveOrder()方法和上面所示的if语句中的付款方式检查有点像;

if (!$redirectUrl && $order->getPayment()->getMethod() != 'your_payment_method' && $order->getCanSendNewEmailFlag()) {
    try {
        $order->sendNewOrderEmail();
    } catch (Exception $e) {
        Mage::logException($e);
    }
}

然后,您将处理IPN通知,以便在收到成功的付​​款IPN后将其发送给电子邮件,我建议您看一下Magento随附的PayPal Standard模块以获取一些指示信息,因为这正是其工作原理。 令您惊讶的是,您拥有的EPDQ模块还不能像这样正常工作,可能值得联系他们并重点指出问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM