@HAtan

Как лучше сделать вывод текста в корзине в зависимости от товара или класса доставки?

Хочу проверять наличие товаров с определенным классом доставки в корзине и в зависимости от того, если он или нет, выводить текст. Если есть этот класс доставки выводить один текст, в случае если его нет то другой.

add_action('woocommerce_cart_display_variable_text' , 'print_text_based_by_cart');

function print_text_based_by_cartt(){

    $class_slug = 'food-stock';
    foreach( WC()->cart->get_cart() as $cart_item ){
        if( $cart_item['data']->get_shipping_class() == $class_slug ){
            echo 'span>Текст 1 </span>';
        }
        else{
            echo 'span>Текст 2 </span>
		    <span>Текст 3 </span>';
        }
    }
}


И вызывать уже в корзине в блок
<div class="cart_totals__item">
            <?php
                do_action('woocommerce_cart_display_variable_text');
            ?>
</div>


Но получаю :
Текст 2
Текст 3
Текст 1
Но нужно что то одно то, надеюсь подскажите где косяк или какой другой путь
  • Вопрос задан
  • 19 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы