/** * Checks if product is in the cart. * * @see https://wpcodebook.com/woocommerce-check-product-in-cart/ * @see https://woocommerce.github.io/code-reference/classes/WC-Cart.html * @see https://developer.wordpress.org/reference/functions/wp_list_pluck/ * * @return bool */ function wpcodebook_is_product_in_cart( $product_id ) { $products = wp_list_pluck( WC()->cart->get_cart_contents(), 'product_id' ); $variations = wp_list_pluck( WC()->cart->get_cart_contents(), 'variation_id' ); return ( in_array( $product_id, $products ) || in_array( $product_id, $variations ) ); }