我正在创建一个 Woocommerce 自定义支付网关插件(它基本上将用户重定向到支付服务页面,然后支付服务页面将用户重定向回指定的 URL),一切都按预期工作,但我似乎无法创建自定义感谢页面从插件.
我所说的“来自插件”的意思是,如果有人安装了我的支付网关插件,他们应该能够看到自定义感谢页面,而无需任何其他操作,例如在 WP 中添加 Woocommerce 主题或页面。
这是我目前用来处理默认感谢页面的内容:
重定向 URL 由以下方式给出:$this->get_return_url($order))
感谢页面附有:
add_action('woocommerce_thankyou_'.$this->id, array( $this, 'return_handler' ) );
这是我应该处理感谢页面消息的函数:
public function return_handler() {
$order_id = get_query_var('order-received');
global $woocommerce;
$order = new WC_Order( $order_id );
//NEXT I JUST CHECK THE ORDER AND SHOW MESSAGES DEPENDING ON THE RESULT
}
编辑:此外,如果有另一种方式将用户返回到将触发我的插件功能之一的 URL,那么这可能是一个有效的选项。
I think您需要定位的过滤器是woocommerce_payment_successful_result
这是在WC_Checkout
class.
function so_27024470_paypal_redirect( $return, $order_id ){
$order = new WC_Order( $order_id );
if( $order->payment_method == 'your-gateway-id' ){
$return['redirect'] = 'http://your-redirect.com';
}
return $return;
}
add_action( 'woocommerce_payment_successful_result, 'so_27024470_paypal_redirect', 10, 2 );
我还没有测试过这个,所以使用时需要您自担风险。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)