Check Product Category in WooCommerce Cart with Code

To determine whether a specific product category exists in the WooCommerce cart, use the woocommerce_before_cart_contents hook. This allows you to run a function just before cart items are rendered. Here’s how you can set it up:

add_action('woocommerce_before_cart_contents', 'check_product_category_in_cart');

function check_product_category_in_cart() {
    $category_slug = 'your-category-slug'; // Enter the category slug you're targeting
    $category_found = false;

    $cart_items = WC()->cart->get_cart();

    foreach ($cart_items as $key => $item) {
        $product_id = $item['product_id'];

        if (has_term($category_slug, 'product_cat', $product_id)) {
            $category_found = true;
            break;
        }
    }

    if ($category_found) {
        echo 'The category is in the cart.';
    } else {
        echo 'The category is not in the cart.';
    }
}

Replace 'your-category-slug' with your actual category slug. You can insert this snippet into your active theme’s functions.php file or your custom plugin. It checks the cart contents and prints a message depending on whether the target category is present.

Leave a Comment

Your email address will not be published. Required fields are marked *

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.