@999kseni999

Word Press: Как в woocommerce уменьшать остаток при добавлении в корзину?

Здравствуйте,
Появилась необходимость уменьшать остаток "на складе" в момент добавления товара в корзину.
То есть добавил пользователь в корзину 2 вещи, и соответственно остаток уменьшился на 2, без обновлений, сразу после нажатия в корзину. И это уменьшение сразу видно всем кто онлайн
Помогите, пожалуйста, как это сделать.
  • Вопрос задан
  • 110 просмотров
Решения вопроса 1
@999kseni999 Автор вопроса
Возможно пригодится кому-то:
add_action('woocommerce_add_to_cart', 'update_product_stock_on_add', 10, 6);

function update_product_stock_on_add($cart_item_key, $product_id, $quantity, $variation_id, $variation, $cart_item_data) {
    global $woocommerce;

    $product = get_product($product_id);

    $woocommerce->cart->cart_contents[$cart_item_key]['old_stock_quantity'] = $product->get_stock_quantity();
    $woocommerce->cart->cart_contents[$cart_item_key]['add_time'] = time();

    wc_update_product_stock($product_id, $product->get_stock_quantity() - $quantity);
}

add_action('woocommerce_after_cart_item_quantity_update', 'update_product_stock_on_update', 10, 2);

function update_product_stock_on_update($cart_item_key, $quantity) {
    global $woocommerce;

    $cart_item = $woocommerce->cart->cart_contents[$cart_item_key];

    wc_update_product_stock($cart_item['product_id'], $cart_item['old_stock_quantity'] - $quantity);
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы