根据总金额自动完成WooCommerce订单

问题描述 投票:1回答:1

我希望禁用自动完成订单,但仅针对金额高于30欧元的订单。所有产品都是虚拟的。

我在网上发现此功能:

add_action( 'woocommerce_thankyou', 'stop_auto_complete_order' );
function stop_auto_complete_order( $order_id ) { 
    if ( ! $order_id ) {
        return;
    }

    $order = wc_get_order( $order_id );
    $order->update_status( 'processing' );
}

但是我不知道如何仅在订单金额高于特定金额时才能使用。

php wordpress woocommerce hook-woocommerce orders
1个回答
0
投票

您需要使用一些WC_Order methods,例如:

  • 总订单金额:WC_Order
  • 订单状态:get_total()

根据您的代码,以下内容将:

  • 自动完成的已付款订单,最多30个(将设置为“已完成”状态)
  • 自动处理大于30的已付款订单(将设置为“处理中”状态)

代码:

get_status()

代码进入您的活动子主题(或活动主题)的functions.php文件中。经过测试,可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.