如何捕捉付款确认在magento



我需要在一个magento网站插入一些标签。问题是,我找不到捕获支付确认事件以将用户重定向到success. php的位置由于

订单/支付过程由Mage_Checkout_OnepageController控制器类(在'app/code/core/Mage/Checkout/controllers/OnepageController.php'中)中的saveOrderAction()操作方法执行。

一旦订单成功,客户将被重定向到您提到的成功页面,该页面由Mage_Checkout_OnepageController中的successAction()操作方法处理。

联盟网络标签应该直接放在'success. php '中。您应该可以访问该模板文件中所需的所有订单数据。但是,如果由于某种原因需要在模板文件中执行更多的工作,则可以处理在successAction()中抛出的'checkout_onepage_controller_success_action'事件:

/**
 * Order success action
 */
public function successAction()
{
    $session = $this->getOnepage()->getCheckout();
    if (!$session->getLastSuccessQuoteId()) {
        $this->_redirect('checkout/cart');
        return;
    }
    $lastQuoteId = $session->getLastQuoteId();
    $lastOrderId = $session->getLastOrderId();
    $lastRecurringProfiles = $session->getLastRecurringProfileIds();
    if (!$lastQuoteId || (!$lastOrderId && empty($lastRecurringProfiles))) {
        $this->_redirect('checkout/cart');
        return;
    }
    $session->clear();
    $this->loadLayout();
    $this->_initLayoutMessages('checkout/session');
    Mage::dispatchEvent('checkout_onepage_controller_success_action', array('order_ids' => array($lastOrderId)));
    $this->renderLayout();
}

最新更新