重定向到自定义ThankYou 页面以获取特定付款方式

时间:2021-05-07 15:13:29

标签: php woocommerce

我想在结账时配置一个规则,如果用户使用特定的付款方式(BACS/银行转账),则在下订单后用户将被重定向到自定义 URL。

此时,当用户选择BACS作为支付方式时,返回购物车,为空。在 WP / Woo 流程中,以下流程正常完成:订单/订单注册,向用户发送包含 BACS 数据的电子邮件以进行银行转账,以及向帐户管理员发送新订单/订单的注册。

发生的情况是,作为对用户的体验,他目前没有收到通知,也没有交易的详细信息或订单生成后如何进行。更重要的是,他们不知道订单已创建,因为他们看不到订单的详细信息。

目前我们为此添加了一个特定的功能

// WooCommerce Redirect when BACS payment is used

add_action( 'woocommerce_thankyou', 'zeninv_redir_based_on_payment_method' );
function zeninv_redir_based_on_payment_method(){

/* do nothing if we are not on the appropriate page */
if( !is_wc_endpoint_url( 'order-received' ) || empty( $_GET['key'] ) ) {
return;
}  
$order_id = wc_get_order_id_by_order_key( $_GET['key'] );
$order = wc_get_order( $order_id );

if( 'bacs' == $order->get_payment_method() ) { /* WC 3.0+ */
wp_redirect( 'https://merakisustentable.com/ar/direct-bank-transfer-thank-you-page/' );
exit;
}
}

上面列出的功能不起作用。我错过了什么吗?

0 个答案:

没有答案