10天后自动将订单状态从处理中更改为完成

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

我正在寻找一种方法,可以在 10 天后自动将订单状态从处理中 (wc-processing) 更改为已完成 (wc-completed)。可以做吗?

如何在 woocommerce 10 天后自动将订单从处理中更改为完成?

php woocommerce
1个回答
0
投票

你可以试试这个代码。首先,我根据参数 args 选择订单。然后我循环遍历这个订单列表数组并检查每个订单的创建日期是否大于 10 天,如果是,我将其状态更新为“已完成”

<?php
$number_of_days = 10;
$args = array('status' => array('wc-processing'), 'limit' => -1, 'type' => 'shop_order');
$orderlist = wc_get_orders($args);
foreach ($orderlist as $anorder) {
    $created = strtotime($order->get_date_created());
    if(( time() - ( 60 * 60 * 24 * $number_of_days ) ) > $created){
        $order = new WC_Order($anorder->ID);
        $order->update_status('completed');
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.