WooCommerce,付款时自动处理订单无效

时间:2013-09-02 20:54:12

标签: wordpress paypal woocommerce paypal-ipn

我已将此段代码添加到我的函数文件中,但在付款后订单仍未标记为“已处理”。

add_filter('woocommerce_payment_complete_order_status', 'my_change_status_function');
function my_change_status_function($order_id) {
    $order = new WC_Order($order_id);
    mail('xxx@xxx.com','payment','received');
    return 'completed';
}

在MercadoPago(我们正在使用的网关)上正确设置了IPN,在访问日志中,我们可以看到MP实际上正在向服务器发送ping。如果您尝试访问ipn网址,则会看到1作为内容。

对可能发生的事情有任何想法?邮件句子仅用于测试目的。

1 个答案:

答案 0 :(得分:0)

你忘了把

$order->payment_complete();

或者如果失败

$order->update_status( 'failed', sprintf( __( 'Payment %s via IPN.', 'woocommerce' ), "failed" ) );

return 'completed'; 

做什么事?