Программное изменение количества WooCommerce без пересчета сумм в корзине - PullRequest
2 голосов
/ 12 марта 2019

Мне нужно изменить количество продукта WooCommerce всякий раз, когда заказ фактически будет отправлен (например, после добавления в корзину или перед отправкой заказа). Мне удалось сделать это так:

function change_cart_item_quantities ( $cart ) {

    $new_qty = 9; // Piece of code for new Qty calculation, dummy number for now

    // Checking cart items
    foreach( $cart->get_cart() as $cart_item_key => $cart_item ) {
        $product_id = $cart_item['data']->get_id();
        $cart->set_quantity( $cart_item_key, $new_qty, false );
    }
}

Метод set_quantity() должен делать именно то, что мне нужно, а третий параметр - логическое значение, определяющее, следует ли обновлять итоги корзины после изменения количества. Это работает хорошо, каждый продукт имеет количество «9» после добавления в корзину, , но итоги корзины обновляются .

Есть ли способ решить это? Я что-то упустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...