Я хочу иметь другой макет после того, как кто-то добавил в корзину товар из категории "Вариант".
У меня есть код, который работает нормально, но разрушает макет. Он смотрит, есть ли в корзине товар определенной категории, если да, добавляет класс в body_class
/* ADD PRODUCT CLASS TO BODYCLASS */
add_filter( 'body_class', 'prod_class_to_body_class' );
function prod_class_to_body_class() {
// set flag
$cat_check = false;
// check cart items
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$product = $cart_item['data'];
if ( has_term( 'my_product_cat', 'product_cat', $product->id ) ) {
$cat_check = true;
break;
}
}
// if a product in the cart has the category "my_product_cat", add "my_class" to body_class
if ( $cat_check ) {
$classes[] = 'my_class';
}
return $classes;
}
Если я загляну в исходный код, я могу увидеть новый класс, если у меня есть продукт категории my_product_cat в корзине. Но макет - катастрофа.
Кто-нибудь видит ошибку?