Oculta el botón de compra por CSS en los productos variables

    En este snippet encontrarás 2 funciones enganchadas a 2 hooks diferentes. Ambos utilizan el método is_type para comprobar que sea un producto variable, pero podrías utilizar la condición que tú prefieras (categoría, nombre, precio…).

    La primera oculta los controles de cantidad del producto mediante CSS, inyectando el código en el elemento head. El segundo usa un filtro nativo de WooCommerce, lo que sería más correcto, pero muestra los controles hasta el final de la carga. Utiliza el que creas conveniente, comentando el add_action/filter correspondiente y descomentando el otro.

    function quantity_wp_head() {
    
    	global $post;
    
    	$product = wc_get_product( $post->ID );
    
    	// $product->is_type( $type ) checks the product type, string/array $type ( 'simple', 'grouped', 'variable', 'external' ), returns boolean
    
    	if ( $product->is_type( 'variable' ) ) {
    	    ?>
    		<style type="text/css">.quantity, .buttons_added { width:0; height:0; display: none; visibility: hidden; }</style>
    
    		<?php 
    
    	}
    
    }
    //add_action( 'wp_head', 'quantity_wp_head' );
    
    /**
     * @desc Remove in all product type
     */
    function wc_remove_all_quantity_fields( $return, $product ) {
    	if ($product->is_type('variation')) {
    		return true;
    	}
    
    	return $return;
    }
    add_filter( 'woocommerce_is_sold_individually', 'wc_remove_all_quantity_fields', 10, 2 );

    Herramientas relacionadas

    • WooCommerce

      El plugin para crear tiendas online por excelencia. Tanto de productos físicos como digitales. Es la base para prácticamente cualquier proyecto web que acepte pagos online.