【发布时间】:2022-01-03 23:52:47
【问题描述】:
我创建了一个自定义支付网关插件,通过第三方支付网关满足 WooCommerce 网站订单的支付需求。一旦第三方收到客户的付款,它就会将发布数据发送到您指定的 URL,以便您可以处理/更新您的数据库。通过 Get 方法更新 WooCommerce 回调的订单状态有效,但不适用于 Post。
这就是我的工作
add_action( 'woocommerce_api_callback', array( $this, 'thirdparty_response' ));
function thirdparty_response()
{
global $woocommerce;
if(isset($_POST['order_id']) && isset($_POST['order_status'])) //Parameters sent by third party gateway
{
$order_status = $_POST['order_status'];
$order_id = $_POST['order_id'];
$order = new WC_Order( $order_id );
if ($order_status == "success")
{
$order->update_status('processing', __('Payment Received', 'woothemes'));
}
else
{
$order->update_status('failed', __('Payment Failed', 'woothemes'));
}
}
}
谢谢你,我希望你能帮助我。
【问题讨论】:
标签: wordpress woocommerce