Ya estudiamos cómo detectar si un La identificación del producto está en el carrito – Pero si echas un vistazo a los comentarios, muchos de ustedes preguntaban cómo detectar categorías de productos.
Entonces, hoy haremos exactamente eso. Puede deshabilitar las tarifas de envío, las pasarelas de pago, puede imprimir mensajes, puede aplicar el cupón mediante programación … Hay muchas cosas que puede hacer «condicionalmente», en función de si una categoría de producto determinada está en el carrito o no.
Fragmento de PHP: verifique si la categoría de producto está dentro del carrito – WooCommerce
/** * @snippet Check if Product Category is in the Cart - WooCommerce * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 5 * @community https://businessbloomer.com/club/ */ add_action( 'woocommerce_before_cart', 'bbloomer_check_category_in_cart' ); function bbloomer_check_category_in_cart() { // Set $cat_in_cart to false $cat_in_cart = false; // Loop through all products in the Cart foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) { // If Cart has category "download", set $cat_in_cart to true if ( has_term( 'download', 'product_cat', $cart_item['product_id'] ) ) { $cat_in_cart = true; break; } } // Do something if category "download" is in the Cart if ( $cat_in_cart ) { // For example, print a notice wc_print_notice( 'Category Downloads is in the Cart!', 'notice' ); // Or maybe run your own function... // .......... } }