Если вам нужно, чтобы клиентам дополнительно в корзину добавлялся дополнительный товар, например упаковка, от которой можно будет отказаться на этапе оформления заказа.
Код автоматического добавления товара
add_action('woocommerce_add_to_cart', 'add_packaging_to_cart', 10, 6);
function add_packaging_to_cart($cart_item_key, $product_id, $quantity, $variation_id, $variation, $cart_item_data) {
// ID товара "Доп товар"
$packaging_product_id = 123; // Замените на реальный ID товара
// Проверяем, не добавлен ли доп товар
$found = false;
foreach (WC()->cart->get_cart() as $cart_item) {
if ($cart_item['product_id'] == $packaging_product_id) {
$found = true;
break;
}
}
// Если доп товара нет в корзине — добавляем
if (!$found) {
WC()->cart->add_to_cart($packaging_product_id, 1); // 1 — количество
}
}
Выше представлен код, который позволяет автоматически добавить товар при добавлении товара в корзину, добавленный товар добавляется 1 раз и не дублируется.
Настройки
- 1. Добавленный товар должен быть создан как товар в Woocommerce, указать его цену
- Добавить ID товара в код на место 123
Теперь при добавлении товара в корзину, выбранный товар будет добавляться автоматически