保持Woocommerce订单状态为待处理
P粉627136450
P粉627136450 2024-03-28 16:34:08
[PHP讨论组]

我不希望 Woocommerce 自动将订单状态从“暂停”更新为“已完成”。我希望它保持“暂停”状态,因为我们正在发送替换物品,并且正在等待原始物品返回给我们。基本上,即使在物品已发货后,我也希望将其设置为“暂停”。有没有办法实现这个目标?

我尝试使用下面的代码,但没有成功:

add_action( 'woocommerce_payment_complete', 'cancel_completed_status' );
   
function cancel_completed_status( $order_id ){
  $order = wc_get_order( $order_id );
  $items = $order->get_items(); 
  foreach ( $items as $item_id => $item ) {
    $product_id = $item->get_variation_id() ? $item->get_variation_id() : $item->get_product_id();
    
    if ( $order->has_status( 'on-hold' )) {
        $order->update_status( 'on-hold' );
        $order->save();
    }
  }
}

P粉627136450
P粉627136450

全部回复(1)
P粉476547076
add_action('woocommerce_order_status_completed', 'completed_to_onhold');

function completed_to_onhold($order_id) {

    $order = new WC_Order($order_id);
    $order->update_status('on-hold');
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号