• ДОБРО ПОЖАЛОВАТЬ В КЛУБ ПО WORDPRESS

    Мы активно растущий клуб по WordPress и нам нужна помощь каждого человека, в том числе и Ваша! Не стесняйтесь и станьте частью большого сообщества.
    Мы делимся новостями, отытом и полезными советами! Пройдите простую регистрацию, чтобы пользоваться всеми возможностями нашего клуба.

    Присоединяйтесь к нам, вам обязательно понравится - Присоединится

Вопрос Как скрыть шлюз в woocommerce если сумма заказа меньше определенной?

vaprub

НОВИЧОК

vaprub

НОВИЧОК
Сообщения
2
Как сделать шлюз оплаты недоступным в woocommerce, если сумма заказа менее определенной суммы, в идеале что бы пункт на странице /checkout показывался, но его нельзя было выбрать и выходило окно что нужно добрать по сумме, возможно есть какие нибудь плагины?
Пробовал этот код, не работает, может подскажет кто как допилить?
Код:
add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );
add_filter('woocommerce_available_payment_gateways', 'unsetting_payment_gateway', 10, 1);

function wc_minimum_order_amount() {
    // Задать переменную, чтобы указать минимальное значение заказа
    $minimum = 1000;
    $limit_reached = false;
    if ( WC()->cart->total < $minimum ) {
        $limit_reached = true;
    } if($limit_reached){
        // Здесь установить способ оплаты
        unset($available_gateways['cod']);
    }
    return $available_gateways;
}
Заранее спасибо
 

vaprub

НОВИЧОК

vaprub

НОВИЧОК
Сообщения
2
Проблема решена, рабочий код:


PHP:
add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );

$limit_reached = false;

function wc_minimum_order_amount()
{
// Задать переменную, чтобы указать минимальное значение заказа
$minimum = 1000;

if ( WC()->cart->total < $minimum ) {
$limit_reached = true;

}
return $limit_reached;
}

function unsetting_payment_gateways( $available_gateways )
{   
$limit_reached = wc_minimum_order_amount();
if ($limit_reached) {   
// Здесь установить способ оплаты
unset($available_gateways['cod']);
}

return $available_gateways;
}
add_action('woocommerce_available_payment_gateways', 'unsetting_payment_gateways');
 
Сверху