Добавляем товар в подарок при покупке определённого товара

В этом уроке я покажу вам, как сделать так, чтобы при добавлении в корзину товара с определённым ID, автоматически добавлялся в неё и бесплатный товар-подарок.

Также непосредственно про корзину на моём сайте есть отдельный видеоурок, вот ссылка.

В качестве товара-подарка можете взять самый обычный товар, главное поставьте ему нулевую цену и скройте со страниц каталога.

товар в подарок при покупке определённого товара WooCommerce
Автомтически добавляем подарок (Вязаная шапочка) в корзину, если покупатель добавил в корзину определённый товар (Футболка с треугольным вырезом).

Ниже код, который вы можете вставить в functions.php текущей темы, не забудьте только подставить ID актуальных товаров на строках 15 и 16.

add_action( 'template_redirect', 'truemisha_auto_gift', 25 );
 
function truemisha_auto_gift() {
 
	// ничего не делаем в админке
	if ( is_admin() ) {
		return;
	}
 
	// ничего не делаем если корзина пуста
	if ( WC()->cart->is_empty() ) {
		return;
	}
 
	$product_id = 35; // ID товара, при покупке которого дарим подарок
	$gift_id = 25; // ID товара-подарка
 
	// вынес наличие подарка в корзине в отдельную переменную
	$is_gift_in_cart = WC()->cart->find_product_in_cart( WC()->cart->generate_cart_id( $gift_id ) );
 
	// если целевой товар не в корзине
	if ( ! WC()->cart->find_product_in_cart( WC()->cart->generate_cart_id( $product_id ) ) ) {
 
		// если подарок присутствует в корзине, то удаляем его из неё
		if ( $is_gift_in_cart ) {
			WC()->cart->remove_cart_item( WC()->cart->generate_cart_id( $gift_id ) );
		}
 
	} else { // если целевой товар в корзине
 
		// на всякий проверяем, если подарок не в корзине, то добавляем
		if ( ! $is_gift_in_cart ) {
			WC()->cart->add_to_cart( $gift_id );
		}
 
	}
}

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Комментарии — 12

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал