Измените текст количества на странице корзины woocommerce, когда 2 продукта из разных категорий

Поэтому я постараюсь быть как можно более конкретным, у меня есть 2 разные категории в моем woocommerce, каждая категория имеет свой ярлык:

1.Вместо "количество" -> "ЭТИКЕТКА1".

2.Вместо "количество" -> "ЭТИКЕТКА2".

Я сделал это, изменив количество-input.php:

if (is_page('cart') || is_cart()) {
            // If it's the cart page do this
            foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
                // If Cart has category "CATEGORYNAME" do this
                if (has_term('CATEGORYNAME', 'product_cat', $cart_item['product_id'])) {
                    esc_html_e('LABEL1', 'woocommerce');
                } else {
                    esc_html_e('LABEL2', 'woocommerce');
                }
            }
        }

Так что это работает, когда клиенты добавляют продукты только из одной категории, но когда он добавляет продукт из другой категории, я получаю LABEL1LABEL2.

Разве цикл foreach не должен проходить по категориям и давать мне другую метку?

Я искал, но я не могу найти решение для этой конкретной вещи.


person Simo    schedule 19.11.2018    source источник
comment
Вам просто нужно вернуть ярлыки на основе категорий?   -  person Sudharshan Nair    schedule 19.11.2018
comment
Да! есть несколько категорий, но только одна из них имеет другой ярлык.   -  person Simo    schedule 19.11.2018


Ответы (1)


Хорошо, я исправил это, я ошибался, пытаясь зациклиться в файле amount-input.php,

Я исправил это, изменив cart.php . Вот что я сделал:

echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 

// Добавьте это после этой строки:

if ($_product->get_category_ids()[0] == 99) {
                    echo '<div>';
                    esc_html_e('LABEL1', 'woocommerce');
                    echo '</div>';
                } else {
                    echo '<div>';
                    esc_html_e('LABEL2', 'woocommerce');
                    echo '</div>';
                }

Спасибо за помощь!

person Simo    schedule 20.11.2018