Всем привет.
В этой статье расскажу про то, как можно расширить возможность woocommerce.
Речь пойдет об установке минимальной суммы заказа.
Это очень полезная штука, если у вас мелкий товар и вам не выгодно продавать его дешево.
Итак, приступим.
При создании мной интернет-магазина, требовалось сделать так, чтобы была возможность устанавливать минимальную сумму заказа.
А именно:
- чтобы на карточке товара было сообщение о том, что минимальная сумма на сайте, например, 200грн.
- чтобы в корзине было сообщение о том, что минимальная сумма на сайте, например, 200грн.
Сообщение должно исчезнуть, если сумма в корзине достигнет 200грн.
- в корзине не должна быть активная кнопка «ОФОРМИТЬ ЗАКАЗ», если общая сумма не достигла 200грн.
Как только сумма достигнет 200грн., кнопка «Продолжить покупку» исчезнет, а кнопка «ОФОРМИТЬ ЗАКАЗ» будет активной:
Итог: Вы не сможете сделать заказ и его оформить, если в корзине не будет 200грн.
В коде текст сообщения и кнопок будет на украинском языке, при желании, можете поменять.
Внимание, весь код добавляете в файл «functions.php» вашей темы перед знаком «?>» (знак находится в конце файла. Его может и не быть. Тогда в таком случае просто ставите код в самом низу)
КОД №1: ДОБАВЛЯЮ ТЕКСТ В КАРТОЧКЕ ТОВАРА
////---------------------- ////----------------------ДОБАВЛЯЮ ТЕКСТ В КАРТОЧКЕ ТОВАРА------------------------------ ////---------------------- add_action( 'woocommerce_single_product_summary', 'action_function_name_2498' ); function action_function_name_2498(){ echo "<p style='font-weight: bold;'>Мінімальна сума замовлення на сайті <span style='color:red;'>200 грн.</span></p>"; }
КОД №2: ДОБАВЛЯЮ СООБЩЕНИЕ В КОРЗИНЕ, ЕСЛИ СУММА НЕ ДОСТИГЛА МИНИМАЛЬНОЙ
add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' ); add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' ); function wc_minimum_order_amount() { $minimum = 200; //минимальная цена заказа if ( WC()->cart->subtotal < $minimum ) { if( is_cart() ) { $s1 = wc_price( $minimum ); $s2 = wc_price( WC()->cart->subtotal); // общая сумма вместе БЕЗ доставки //$s2 = wc_price( WC()->cart->total ); // общая сумма вместе С доставкой $message = "Мінімальна сума замовлення на сайті $s1"; wc_print_notice( $message, 'error' ); } else { $s1 = wc_price( $minimum ); $s2 = wc_price( WC()->cart->subtotal); // общая сумма вместе БЕЗ доставки //$s2 = wc_price( WC()->cart->total ); // общая сумма вместе С доставкой $message = "Мінімальна сума замовлення на сайті $s1"; wc_add_notice( $message, 'error' ); } } }
Строка №5 – устанавливаем минимальную сумму заказа. В коде посмотрите закомментированый текст. Я оставил вам подсказку. Если нужно, чтобы минимальную сумму сравнивало с общей сумой вместе с доставкой, тогда раскомментируйте:
//$s2 = wc_price( WC()->cart->total ); // общая сумма вместе С доставкой
И закомментируйте:
$s2 = wc_price( WC()->cart->subtotal); // общая сумма вместе БЕЗ доставки
КОД №3: СКРЫВАЕМ КНОПКУ «ОФОРМЛЕНИЕ ЗАКАЗА», ЕСЛИ СУММА НЕ ДОСТИГЛА МИНИМАЛЬНОЙ
//------------------------------------------- //Как отключить кнопку «оформление заказа», если минимальная сумма не достигнута //----------------------------------------- function disable_checkout_button() { // Set this variable to specify a minimum order value $minimum = 200; $total = WC()->cart->cart_contents_total; if( $total < $minimum ){ remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 ); echo '<a href=" /shop/" style="display: inline-block;" class="checkout-button button alt wc-forward ">Продовжити покупку</a> <a style="pointer-events: none !important; background: #dfe1f0; border-color: #dfe1f0; color: rgba(51,51,51,.5); cursor: no-drop; display: inline-block;" href="#" class="checkout-button button alt wc-forward">Перейти до оформлення</a><p style="font-weight: bold;">Мінімальна сума замовлення на сайті <span style="color:red;">'.$minimum.'</span> грн. </p>'; } } add_action( 'woocommerce_proceed_to_checkout', 'disable_checkout_button', 1 );
Вот и все.
Поддерживайте мой блог, если вы хотите и дальше видеть полезные статьи.
А именно, отключите ADBLOCK или добавьте сайт в доверенные.
Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓
Последние новости категории:
Похожие статьи
Популярные статьи:
-
Как узнать id компьютера
Дата: 29 марта 2013
Прокомментировано:90
просмотров: 330330 -
Размеры форматов листов А0 – А7
Дата: 23 января 2013
Прокомментировано:3
просмотров: 274683 -
Смешные логические загадки с подвохом, отгадки прилагаются
Дата: 12 ноября 2014
Прокомментировано:5
просмотров: 222437 -
Готовые макеты блоков для веб-страниц на HTML и CSS
Дата: 25 июня 2014
Прокомментировано:23
просмотров: 187487 -
Установка windows 7 на ноутбук
Дата: 18 декабря 2012
Прокомментировано:169
просмотров: 186559
2 Ответов на комментарий - Как установить минимальную сумму для заказа – WooCommerce?
Добавить комментарий
Метки: wordpress, без плагинов
Спасибо, Александр за комментарий.
Планирую еще пару постов для WooCommerce