• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Как проверить наличие товара в корзине?

Image CMS

Lexxxer

Новичок
#1
Доброго времени суток!
На главной странице мобильной версии моего сайта имеется иконка корзины.
Поверх нее в красном кружке выводится количество товара в корзине таким образом:

<?php echo WC()->cart->get_cart_contents_count();?>

Помогите пожалуйста сделать проверку наличия товара в корзине, чтобы при пустой корзине этот кружок вообще не отображался, а при наличии товара в корзине появлялся.
В php не силен.

Заранее спасибо!
 

searchingman

Гуру
Местный
#2
Возможный вариант решения:
1. Находите нужный html-блок корзины.
2. В зависимости от наличия товара в корзине добавляется класс cart_full ("полной") или cart_empty ("пустой") корзины.
Пример, для темы Storefront
PHP:
<a class="cart-contents<?php echo (WC()->cart->get_cart_contents_count())? ' cart_full':' cart_empty'; ?>" href="<?php echo esc_url( WC()->cart->get_cart_url() ); ?>" title="<?php esc_attr_e( 'View your shopping cart', 'storefront' ); ?>">
                <span class="amount"><?php echo wp_kses_data( WC()->cart->get_cart_subtotal() ); ?></span> <span class="count"><?php echo wp_kses_data( sprintf( _n( '%d item', '%d items', WC()->cart->get_cart_contents_count(), 'storefront' ), WC()->cart->get_cart_contents_count() ) );?></span>
            </a>
3. В файле стилей прописываете видимость/не видимость блока.
Н-р, так
HTML:
.cart_empty {display:none !important;}
.cart_full {display:block !important;}
В зависимости от разметки вашего блока корзины, возможно, понадобиться дополнительная кастомизация с помощью стилей или js-скрипта.