Я думаю, что вы хотите проверить, что корзина не пуста перед вашей функцией.
Также ... Вы можете получить доступ к цене, используя get_price()
от объекта продукта, который вы извлекаете с помощью $values['data']
function is_in_the_cart(){
// Make sure it's only on front end
if (is_admin()) return false;
$found = false;
// If cart is empty - bail and return false
if (empty (WC()->cart->get_cart())) {
return false;
} else {
foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) {
$cart_product = $values[ 'data' ];
// Find if product is in the cart price <=40
$price = floatval($cart_product->get_price());
if ( $price >= 40 && $cart_product->id == '969' ) {
$found = true;
}
}
if ( $found ) {
return true;
} else {
return false;
}
}
}
ОБНОВЛЕНО - добавлено is_admin
для предотвращения запуска на сервере.