/ Плагины / Купон на следующий заказ

Купон на следующий заказ

HIT

06.04.2021

1320

Проработаем функционал по отправке купона на следующий заказ. Дополнительные условия:

  • Купон должен отправлять только при наличии в текущем заказе товара из определенной категории
  • Номинал купона либо 30% если сумма следующей покупки менее 3300 руб., либо 1000 руб. если сумма покупки более 3300 руб.
  • Купоны должны быть полностью одноразовыми, т.е. генерироваться индивидуально для каждого заказа, например: WB-14gf78, WB-dfgf34, и т.д.

Готовые решения

Плагин WooCommerce Next Order Coupon (100+) отправляет одноразовый (для одного пользователя) купон. В настройках можно вписать название купона (по умолчанию WELCOMEBACK) и выбрать 2 варианта скидки 5% или 10%.

В письме о текущем заказе появляется следующее уведомление.

Retainful — WooCommerce Cart Abandonment Recovery and Next Order Coupons (3000) в данном плагине совмещены функционал купона на следующий заказ и заброшенные корзины. Настроек для купона на следующий заказ побольше чем в предыдущем решении, в т.ч. по части самого купона.

Отправка купона без плагина

Создаем одноразовый (для одного пользователя) купон WELCOMBACK с необходимыми условиями.

Добавляем в письмо клиента о заказе информацию о купоне, только при наличии в заказе позиций из определенных категорий:

// Добавить в шаблон письма об успешном заказе инфу о купоне на следующую покупку
add_filter( 'woocommerce_email_after_order_table', 'next_order_message', 10, 2 );

function next_order_message($order) {
	
	foreach ( $order->get_items() as $item_id => $item ) {
		$product_cat_ids[] = wp_get_post_terms( $item->get_product_id(), 'product_cat', array('fields' => 'ids') );
	} 
	
	$product_cat_ids = array_merge(...$product_cat_ids);
	$control_cats = array(139,874,2011,2012,2013,2014,2015); // отправлять только при наличии в заказе позиций из этих категорий
	
	if ( count(array_intersect( $control_cats, $product_cat_ids )) > 0 ) { 
		echo '
		<div style="background: #0093d2; padding: 20px 30px 5px; margin-bottom: 15px; color: #fff; border-radius: 3px;">
			<h2 style="font-size: 24px; color: #fff;">Скидка 30% на следующий заказ</h2>
			<p>Возвращайтесь за новыми покупками! Мы дарим вам купон на следующий заказ от 3300 руб.: <strong>WELCOMEBACK</strong></p>
		</div>
		';		
	} 

}

Если нужно вывести эту же информацию в шаблоне успешного заказа, с благодарностью о покупке, то в шаблоне woocommerce/checkout/thankyou.php в нужном месте нужно добавить action:

<?php do_action( 'next_order_message_in_current_order', $order->get_id() ); ?>

И к нему в functions.php привязать аналогичную функцию:

add_action('next_order_message_in_current_order', 'next_order_message_site' );

function next_order_message_site($order_id) {
	
	$order = wc_get_order( $order_id );
	
	foreach ( $order->get_items() as $item_id => $item ) {
		$product_cat_ids[] = wp_get_post_terms( $item->get_product_id(), 'product_cat', array('fields' => 'ids') );
	} 
	
	$product_cat_ids = array_merge(...$product_cat_ids);
	$control_cats = array(139,874,2011,2012,2013,2014,2015); // показывать только при наличии в заказе позиций из этих категорий
	
	if ( count(array_intersect( $control_cats, $product_cat_ids )) > 0 ) { 
		echo '
		<div style="background: #0093d2; padding: 20px 30px 5px; margin-bottom: 15px; color: #fff; border-radius: 3px;">
			<h2 style="font-size: 24px; color: #fff;">Скидка 30% на следующий заказ</h2>
			<p>Возвращайтесь за новыми покупками! Мы дарим вам купон на следующий заказ от 3300 руб.: <strong>WELCOMEBACK</strong></p>
		</div>
		';		
	}

}

Вариативный номинал купона

Сначала я хотел создать 2 одинаковых купона, но с разными условиями, но система предупредила что такой купон уже существует и будет использован тот который создан последним.

[site-socialshare]
  • Похожие записи
  • Комментарии
  • Вложения
Табы woocommerce

Табы woocommerce

В данной статье будут рассмотрены все моменты связанные с табами Woocommerce. Табы (вкладки) — это секции контента разделенного по смыслу. Редактируем стандартные табы WC Настраиваем порядок вкладок У меня почему Читать далее »

Кнопки WC

Кнопки WC

Давно хотел подробно разобрать тему с кнопками WC. Кнопки меняют свой вид и функционал в зависимости от типа продукта, наличия, и других факторов. Так же в движке магазина Woocommerce множество Читать далее »

Вкладка Дополнительная информация

Вкладка Дополнительная информация

У товаров WC есть вкладка Дополнительная информация (Additional Information), в которой по-умолчанию выводятся атрибуты, вес и габариты товара. Добавим в эту вкладку дополнительные данные. Проверки содержит ли товар атрибуты, вес Читать далее »

Добавить комментарий

Notice: Функция WP_Styles::add вызвана неправильно. Стиль с дескриптором "editor-buttons" был поставлен в очередь с незарегистрированными зависимостями: dashicons. Дополнительную информацию можно найти на странице «Отладка в WordPress». (Это сообщение было добавлено в версии 6.9.1.) in /home/t/tiberi6w/opttour.ru/public_html/wp-includes/functions.php on line 6170

Пока нет комментариев. Будь первым!

Купон на следующий заказ Купон на следующий заказ
Различные наработки по Woocommerce
Рекомендации для васРазличные наработки по WoocommerceOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.