Añadir producto de regalo automáticamente en WooCommerce. Código gratis

añadir producto de regalo automáticamente en WooCommerce

Tabla de contenidos - Añadir producto de regalo automáticamente en WooCommerce. Código gratis

    Si tienes una tienda online WooCommerce y estás buscando una manera de conquistar a tus clientes, te voy a mostrar una manera que encontré para añadir otro producto gratis en WooCommerce automáticamente.

    Seguro que en más de una ocasión viste el clásico compra esto y te regalamos x producto. Pues esto lo mismo. Un cliente de una marca de ropa quería ofrecer un pack de calcetines con la compra de cualquiera de sus otros productos y después de explorar un montón de plugins y opciones, no había ninguno que me convencía del todo.

    Y para que añadir más plugins cuando un simple código puede hacer lo mismo.

    Sin más rodeos, vamos a ver cómo añadir productos gratis automáticamente.

    Pasos para añadir un producto de regalo automáticamente en WooCommerce

    Paso 1. Crea el producto que quieres regalar y apunta el ID

    Captura de pantalla 2023 04 02 a las 21.27.33 Juan Pardo

    Paso 2. Añade este fragmento de código

    En tu functions.php o con un plugin de fragmentos de códigos (este es mi favorito) añade el siguiente fragmento:

    // Añadir producto de regalo especificando el subtotal del carrito
    add_action( 'woocommerce_before_calculate_totals', 'check_free_gifted_product' );
    function check_free_gifted_product( $cart ) {
    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
    return;
    
    // AJUSTES
    $free_product_id = 531; // CAMBIAR EL ID POR EL PRODUCTO QUE QUIERES REGALAR
    $targeted_subtotal = 1; // CAMBIAR POR EL MINIMO DEL CARRITO REQUERIDO PARA DAR EL REGALO
    
    $cart_subtotal = 0; // Initializing
    
    // Loop through cart items (first loop)
    foreach ( $cart->get_cart() as $cart_item_key => $cart_item ){
    // When free product is is cart
    if ( $free_product_id == $cart_item['product_id'] ) {
    $free_key = $cart_item_key;
    $free_qty = $cart_item['quantity'];
    $cart_item['data']->set_price(0); // Optionally set the price to zero
    } else {
    $cart_subtotal += $cart_item['line_total'] + $cart_item['line_tax'];
    }
    }
    
    // Si el subtotal es correcto y el producto de regalo no estaba ya en el carrito, incluirlo
    if ( ! isset($free_key) && $cart_subtotal >= $targeted_subtotal ) {
    $cart->add_to_cart( $free_product_id );
    }
    // Si el subtotal mínimo para el regalo no es suficiente y el producto ya está en el carrito, eliminarlo
    elseif ( isset($free_key) && $cart_subtotal < $targeted_subtotal ) { $cart->remove_cart_item( $free_key );
    }
    // Mantén la cantidad del producto de regalo en 1.
    elseif ( isset($free_qty) && $free_qty > 1 ) {
    $cart->set_quantity( $free_key, 1 );
    }
    }
    
    // Mostrar el producto de regalo en el minicarrito con precio cero.
    add_filter( 'woocommerce_cart_item_price', 'change_minicart_free_gifted_item_price', 10, 3 );
    function change_minicart_free_gifted_item_price( $price_html, $cart_item, $cart_item_key ) {
    $free_product_id = 1189; // CHANGE THIS TO YOUR PRODUCT ID
    
    if( $cart_item['product_id'] == $free_product_id ) {
    return wc_price( 0 );
    }
    return $price_html;
    }

    Paso 3. Sustituye los valores en los ajustes

    añadir un producto de regalo automáticamente en WooCommerce código

    Cuentas con 2 ajustes principales:

    • El ID del producto a sustituir por el que has creado de regalo en el primer paso
    • El mínimo del carrito para añadir el regalo automáticamente

    Eso es todo! Espero que te sirva de utilidad.

    Facebook
    Twitter
    LinkedIn

    Otros artículos de Diseño Web WordPress destacados