Woocommerce订单状态为具有Woo Credit插件的虚拟产品



我正在我的商店工作,我销售的所有产品都是虚拟的,因为它们提供解锁代码。

我正在使用名为 StockUnlock 的插件来实现与我的提供商的 API 访问:到目前为止一切都很好。

按照 StockUnlock 插件在客户购买其产品时采取行动的顺序,订单状态必须在收到付款后处理,但不是:
当我收到付款时,状态变为完成,插件不起作用。我使用的付款方式是woo-credits(Woo Credits插件(。

如何解决此问题,以获得处理状态而不是已完成?

此行为来自 Woo Credit 插件(您可以联系作者支持线程(。

现在,您可以尝试此代码,该代码仅针对"woo_credits"支付网关,并在客户在"订单已收到"页面(谢谢(中提交订单后将订单状态更新回"正在处理":

add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_complete_paid_order', 999, 1 );
function custom_woocommerce_auto_complete_paid_order( $order_id ) {
    // Only for 'woo_credits' payment gateway
    if ( ! $order_id || 'woo_credits' != get_post_meta($order_id, '_payment_method', true) )
        return;
    // Get an instance of the WC_Order object
    $order = wc_get_order( $order_id );
    // Update order status back to 'processing'
    $order->update_status( 'processing' );
}

代码进入函数.php活动子主题(或活动主题(的文件。

此代码未经测试,但可能适合您。

相关内容

  • 没有找到相关文章

最新更新