我想在客户下订单后立即添加操作(将订单明细推送到api) 我使用woocommerce_thankyou hook添加我的自定义脚本 但它始终显示订单收到页面而不是谢谢页面 请告诉我解决这个问题的方法。 这是我的代码:
add_action('woocommerce_thankyou', 'push_order', 1, 1);
function push_order($order_id) {
try {
$logger = new WC_Logger();
$logger->add("push-order-to-sap", "Start pushing order id: {$order_id}");
$order = wc_get_order($order_id);
$xml = order_mapping($order);
die;
$push = call_api(
<endpoint>,
$xml,
'order'
);
$logger->add("push-order-to-sap", "Pushing result: {$push}");
} catch (Exception $e) {
$logger->add("push-order-to-sap", "ERROR: ".$e->getMessage());
}
return;
}
答案 0 :(得分:0)
晚安
我希望我的回答可以帮助您解决问题,
add_action( 'woocommerce_thankyou', 'custom_redirect');
function custom_redirect( $order_id ){
$order = new WC_Order( $order_id );
$url = 'http://yoursite.com/custom-url';
if ( $order->status != 'failed' ) {
wp_redirect($url);
exit;
}
}