Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Минимальная сумма заказа для определенной категории

Тема в разделе "Вопросы, советы и доработки.", создана пользователем red89rus, 20 май 2016.

  1. red89rus

    red89rus

    Сообщения:
    8
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте. Нужно написать такой скрипт: если в корзине присутствует товар определенной категории то выставляется минимальная сумма заказа. Вставляю в functions.php этот код:
    PHP:
    add_action'woocommerce_checkout_process''wc_minimum_order_amount' );
    add_action'woocommerce_before_cart' 'wc_minimum_order_amount' );
    function 
    wc_minimum_order_amount() {
        
    // Set this variable to specify a minimum order value
        
    $minimum 50;

        if ( 
    WC()->cart->total $minimum ) {

            if( 
    is_cart() ) {

                
    wc_print_notice(
                    
    sprintf'You must have an order with a minimum of %s to place your order, your current order total is %s.' ,
                        
    woocommerce_price$minimum ),
                        
    woocommerce_priceWC()->cart->total )
                    ), 
    'error'
                
    );

            } else {

                
    wc_add_notice(
                    
    sprintf'You must have an order with a minimum of %s to place your order, your current order total is %s.' ,
                        
    woocommerce_price$minimum ),
                        
    woocommerce_priceWC()->cart->total )
                    ), 
    'error'
                
    );

            }
        }

    }
    Подскажите, как задать условие, чтобы проверялась принадлежность товара к категории...
     
  2. red89rus

    red89rus

    Сообщения:
    8
    Симпатии:
    0
    Баллы:
    1
    Решение найдено. Для всех кто интересуется:
    PHP:
    // Выводит ошибку, если присутствует товар из определенной категории
    // с суммой заказа меньше 500 р.
    add_action'woocommerce_checkout_process''wc_minimum_order_amount' );
    add_action'woocommerce_before_cart' 'wc_minimum_order_amount' );
    function 
    wc_minimum_order_amount() {
        
    // Минимальная сумма заказа
        
    $minimum 500;

        if ( 
    WC()->cart->total $minimum ) {
        
    // Построение массива
            
    $draught_links = array();
        foreach(
    WC()->cart->get_cart() as $cart_item_key => $values ) {
            
    $_product $values['data'];
            
    $terms get_the_terms$_product->id'product_cat' );
            foreach (
    $terms as $term) {
                
    $draught_links[] = $term->name;
            }  
        }
        
    // Проверка присутствия нужного товара
        
    if (in_array("название категории"$draught_links)){
            
    $on_draught true;
        }else{
            
    $on_draught false;
        }
        
    // Проверка корзины
            
    if( is_cart() ) {
            if(
    $on_draught)  {
                
    wc_print_notice(
                    
    sprintf'You must have an order with a minimum of %s to place your order, your current order total is %s.' ,
                        
    woocommerce_price$minimum ),
                        
    woocommerce_priceWC()->cart->total )
                    ), 
    'error'
                
    );
            }
            } else {
             if(
    $on_draught) {
                
    wc_add_notice(
                    
    sprintf'You must have an order with a minimum of %s to place your order, your current order total is %s.' ,
                        
    woocommerce_price$minimum ),
                        
    woocommerce_priceWC()->cart->total )
                    ), 
    'error'
                
    );
             }
            }
        }

    }
     
  3. Ahazhgir

    Ahazhgir

    Сообщения:
    7
    Симпатии:
    1
    Баллы:
    3
    Подскажите как установить разную минимальную сумму заказа для разных категорий товаров