woocommerce没有进入结账响应功能

时间:2017-07-04 14:33:16

标签: woocommerce hook-woocommerce

我正在为woocommerce创建一个插件。这是一个自定义支付网关。

问题: 当从我的网站返回到woocommerce时,我将结果传递为返回URL中的已完成或失败(例如:http://woocommercetestwebsite.com/checkout/order-received/771/?key=wc_order_5955555324&message=completed)。

如何在“已接收订单”页面上解析上述URL,以便我可以在woocommerce中将订单标记为已完成或失败?

我尝试在我的插件中添加:add_action( 'woocommerce_api_' . strtolower( get_class( $this ) ), array( $this, 'check_ipn_response' ));。但它不起作用。这是错误的方式吗?

public function check_ipn_response(){
    try{
        global $woocommerce;

        $order = new WC_Order($order_id);
        $order_status = $_GET['message'];

        if ($order_status == 'completed') {
            $order->payment_complete();
            $order->update_status('completed');
        } else if ($order_status == 'failed') {
            $order->update_status('failed');
        }

        $woocommerce->cart->empty_cart();
    }
}

0 个答案:

没有答案