Обновление вариаций цены заказа с помощью woocommerce - PullRequest
0 голосов
/ 08 июня 2018

пытается найти способ обновить цены товаров в заказах woocommerce, если цена продажи товара изменилась, с помощью WC_Order.он отлично работает на отдельных продуктах, но при использовании переменного продукта в woocommerce он получает только первый вариант этого соответствующего продукта.Не могу понять почему?

// Cron job 
add_action( 'isa_add_every_three_minutes', 'every_three_minutes_event_func' );
function every_three_minutes_event_func( $checkout = null)
{
    global $woocommerce;
    global $product;

    $query = new WC_Order_Query( array(
        'status' => 'on-hold',
        'orderby' => 'date',
        'order' => 'DESC',
        'return' => 'ids',
    ) );
    $order_ids = $query->get_orders();

    foreach( $order_ids as $order_id ) {

// Getting all products
        $order = new WC_Order($order_id);

// Going through all orders
        foreach ($order->get_items() as $item_id => $item_obj) {
            $_product = wc_get_product($item_obj['product_id']);
            $t_dy = $_product->get_price();
            $item_qty = $item_obj['qty'];
            $it_total = $item_qty * $t_dy;
            $td = wc_update_order_item_meta($item_id, '_line_total', $it_total);
            $order->calculate_totals();
            $order->save();
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...