Cómo aplicar cupones de WooCommerce automáticamente

Publicado: 2021-06-22

¿Está buscando formas de agregar descuentos a sus productos para aumentar sus ventas? Has venido al lugar correcto. En esta guía, le mostraremos cómo aplicar los cupones de WooCommerce automáticamente .

Anteriormente hemos visto cómo crear cupones en WooCommerce y algunos ejemplos de cómo aplicarlos mediante código. En esta ocasión, nos centraremos en cómo aplicar automáticamente estos descuentos para sorprender a tus compradores y aumentar tus ventas.

¿Por qué aplicar cupones de WooCommerce mediante programación?

Ofrecer cupones a los usuarios es una excelente manera de aumentar sus ventas. Al ofrecer a los compradores un descuento cuando están pensando en comprar uno de sus productos, los alentará a completar la compra.

Convertir a los visitantes en clientes ofreciendo un descuento atractivo es una estrategia de marketing comprobada que la mayoría de los sitios web de comercio electrónico aprovechan. Sin embargo, vale la pena señalar que el éxito de esa oferta dependerá en gran medida de cuándo hagas el descuento.

Si ofrece un descuento a alguien que solo está navegando, es poco probable que la oferta tenga algún efecto. Del mismo modo, si reduce el precio a alguien que ya ha decidido dónde y qué comprar, es posible que sea demasiado tarde para cambiar de opinión o reducir sus ingresos cuando podría haber cobrado el precio completo. El mejor momento para dar códigos de cupón es cuando los compradores están pensando en comprar pero aún no han tomado su decisión final.

Los descuentos también son una excelente manera de construir una relación sólida con sus clientes recurrentes. Al recompensar a sus clientes con descuentos exclusivos, les está dando más razones para volver a su tienda y convertirse en usuarios leales.

Limitaciones de los cupones predeterminados de WooCommerce

La funcionalidad de cupones predeterminada que ofrece WooCommerce funciona bien, pero tiene algunas limitaciones. La más importante es que los usuarios deben ingresar los cupones manualmente y actualizar la página para aplicar el descuento a sus pedidos. Como puede imaginar, esta fricción adicional no es ideal y puede hacerle perder clientes.

Además, no es posible aplicar ningún tipo de condición lógica más allá de las predeterminadas que están relacionadas con la fecha de vencimiento y la forma en que se aplica el descuento. Por eso, para aprovechar al máximo los cupones, puede personalizar su comportamiento y aprender a aplicarlos mediante programación.

En esta guía, aprenderá cómo aplicar los cupones de WooCommerce automáticamente . De esta manera, los usuarios no necesitarán memorizar los cupones, copiarlos/pegarlos o actualizar la página del carrito. Esto mejorará la experiencia del cliente y lo ayudará a impulsar sus ventas tanto a corto como a largo plazo.

Cómo aplicar cupones de WooCommerce automáticamente

Como editaremos el archivo functions.php , antes de comenzar con el proceso, le recomendamos que haga una copia de seguridad completa de su sitio e instale un tema secundario. Puede crear un tema secundario o usar un complemento. Además, le recomendamos que consulte esta guía si no está familiarizado con los ganchos de WooCommerce.

Una vez que hagas eso, comencemos creando el cupón.

1) Crea un cupón de WooCommerce

Primero, en su tablero de WordPress, vaya a WooCommerce > Cupones/Marketing > Cupones y haga clic en Agregar cupón .

Crear descuento de cupón de woocommerce

Luego, ingresa el nombre del cupón. Como esto es lo que usaremos para dar descuentos, recomendamos un nombre descriptivo y simple.

Además de eso, debe especificar otra información importante:

  • Importe del descuento (fijo o porcentual)
  • Tipo de cupón
  • Fecha de caducidad

También puede agregar algunas otras opciones, como restricciones de uso, límites por usuario, etc. Para obtener más información al respecto, consulte nuestra guía sobre cómo configurar cupones de WooCommerce.

Crear configuraciones de cupones de woocommerce

Una vez que haya creado el cupón, veamos diferentes formas de aplicarlos automáticamente.

2) Cómo agregar automáticamente cupones de WooCommerce

Antes de sumergirse en el código, tenga en cuenta que estamos usando el mismo código de cupón de " all-products " en todos los siguientes scripts de muestra. Este código aplicará un 3% de descuento sobre el subtotal.

Usar este cupón en todos los casos puede no tener sentido para su negocio, así que asegúrese de ajustar cada script y edite la variable $coupon_code con su código de cupón.

Ahora veamos algunos ejemplos de cómo aplicar cupones automáticamente en WooCommerce.

2.1) Aplicar un cupón a los clientes que regresan

Esto se aplicará al cupón de descuento solo si el cliente ha completado previamente un pedido.

 // Clientes que regresan
add_action('woocommerce_before_cart', 'QuadLayers_returning_customers_coupon');
 
función QuadLayers_returning_customers_coupon(){
   $coupon_code = 'todos los productos';
   # Obtener pedidos de clientes
   $id_usuario = wp_get_current_user();
   $pedidos_clientes = [];
   foreach (wc_get_is_paid_statuses() como $estado_pagado) {
       $pedidos_clientes += wc_get_orders( [
           'escribe
' => 'pedido_tienda',
           'límite' => - 1,
           'customer_id' => $user_id->ID,
           'estado' => $estado_pagado,
       ]);
       # aplicar cupón si hay un pedido existente
       si (cuenta ($ pedidos_clientes)> 0) { 
           printf('<div class="woocommerce-message">¡Este pedido aplica para un descuento porque usted es un cliente recurrente!</div>');
           if ( WC()->cart->has_discount( $coupon_code ) ) return;
           WC()->carrito->aplicar_cupón( $código_cupón);
           wc_print_avisos();
           descanso;
       }   
   }
}

Este es el resultado en la página del carrito:

Aplicar cupones de WooCommerce automáticamente: cupón para clientes que regresan

Como puede imaginar, esto requiere que los usuarios inicien sesión en sus cuentas, porque necesitamos obtener su identificación de usuario para verificar si tienen pedidos existentes.

Si se cumple esa condición, se aplicará el descuento y se mostrará un mensaje en el carrito.

Para cambiar el mensaje, simplemente edite la línea printif en el script.

2.2) Aplicar el cupón de WooCommerce en la información del usuario de la cuenta

También puede aplicar un cupón específico según los detalles de la cuenta de usuario. En el siguiente script de muestra, aplicaremos el cupón solo a los clientes que hayan ingresado a los Estados Unidos (EE. UU.) como país en sus cuentas. Esta puede ser una opción interesante para promociones específicas para aumentar las ventas en ciertos mercados o países.

 // Aplicar cupón en el país de facturación (EE. UU.)
add_action('woocommerce_before_cart', 'QuadLayers_customer_information_coupon');
 
función QuadLayers_customer_information_coupon(){
   $coupon_code = 'todos los productos';
   $usuario = wp_get_current_user();
   $datos = get_user_meta( $usuario->ID, 'billing_country', true );
   si ($datos = = "EE.UU."):
   printf('<div class="woocommerce-message"> ¡Este pedido aplica para un descuento para clientes de EE. UU.! </div>');
           if ( WC()->cart->has_discount( $coupon_code ) ) return;
           WC()->carrito->aplicar_cupón( $código_cupón);
           wc_print_avisos();
   demás:
       WC()->carrito->remove_coupons( sanitize_text_field( $coupon_code ));
       wc_print_avisos();  
       WC()->carrito->calcular_totales();    
   terminara si;
}

Además de agregar el cupón cuando el país de facturación del usuario es Estados Unidos, también eliminamos el cupón si el país no es Estados Unidos. Si no lo hacemos, un usuario podría editar su dirección de facturación para obtener el cupón, y el cupón permanecería allí después de regresar al país original.

2.3) Aplicar cupón en horario

Las opciones predeterminadas de WooCommerce nos permiten crear cupones que se aplican a fechas específicas o en un calendario de fechas. Pero, ¿qué sucede si necesita aplicar un cupón en un horario diario? Simplemente use el siguiente script para aplicar el cupón especificado solo de 6:00 a. m. a 10:00 a. m., por ejemplo.

Esta es una opción interesante para lanzar ventas flash y aplicar cupones automáticamente en WooCommerce.

 // Aplicar cupón en horario diario (06:00/10:00)
add_action('woocommerce_before_cart', 'QuadLayers_timer_scheduled_coupon');
 
función QuadLayers_timer_scheduled_coupon(){
$hora del blog = hora_actual('mysql');
list( $hoy_año, $hoy_mes, $hoy_dia, $hora, $minuto, $segundo ) = preg_split( "([^0-9])", $blogtime );
   $coupon_code = 'todos los productos';
   if($hora>=06&&$hora<10){
       printf('<div class="woocommerce-message">Recibirás nuestro descuento de buenos días (de 6 a 10 a. m.) </div>');
           if ( WC()->cart->has_discount( $coupon_code ) ) return;
           WC()->carrito->aplicar_cupón( $código_cupón);
           wc_print_avisos();
   }
}

Tenga en cuenta que estamos recuperando la hora única del sitio web en nuestro condicional y que proviene del servidor, por lo que será la misma hora independientemente de la zona horaria en la que se encuentre el cliente. Para establecer horas específicas por zona horaria, debe incluir una lógica adicional.

2.4) Aplicar cupón en la taxonomía de etiquetas de productos

Esta es una función más compleja, donde recuperamos todas las etiquetas de los productos agregados al carrito y verificamos si una etiqueta específica está presente.

En el siguiente ejemplo, la etiqueta que usamos es " freeweek ", por lo que antes de hacer esto, debe crear una etiqueta y adjuntarla a algunos productos. Alternativamente, puede usar cualquiera de las etiquetas que ya están adjuntas a sus productos.

 // Aplicar cupón a la taxonomía de etiquetas de productos (semana libre)
//
add_action('woocommerce_before_cart', 'QuadLayers_tag_coupon');
 
función QuadLayers_tag_coupon() {
   $coupon_code = 'todos los productos';
   $id_a=matriz();
   foreach (WC()->carrito->get_cart() as $clave => $carrito_elemento) {
       for ($i=0; $i < $cart_item['cantidad'] ; $i++) {  
           $productId = $cart_item['datos']->get_id();
           array_push($id_a,$productId);         
       }
   }
  
   for($t=0;$t<cuenta($id_a);$t++){
       $términos = wp_get_post_terms( $id_a[$t], 'product_tag' );
       foreach ($términos como $término){
               $término_nombre = $término->nombre; // Nombre de la etiqueta del producto
           if($término_nombre=='semanalibre'):
                   printf('<div class="woocommerce-message">¡Un producto está etiquetado con un descuento!</div>');
                   if ( WC()->cart->has_discount( $coupon_code ) ) return;
                   WC()->carrito->aplicar_cupón( $código_cupón);
                   wc_print_avisos();
               descanso;
           demás:
                   WC()->carrito->remove_coupons( sanitize_text_field( $coupon_code ));
                   wc_print_avisos();  
                   WC()->carrito->calcular_totales();
           terminara si;
       }
   }
}

Este descuento se aplicará a todos los productos añadidos al carrito que tengan la etiqueta especificada.

Una vez más, asegúrese de reemplazar el nombre de la etiqueta " semana libre " en el código con la etiqueta de su producto.

2.5) Aplicar cupón en un parámetro de URL

Otra aplicación interesante de los códigos de cupón es el uso de parámetros de URL para crear un enlace personalizado. En un navegador, un parámetro de URL y su valor aparecen así:

https://my.website.com/cart?parameter=value

De esta manera, puede crear un enlace personalizado y enviárselo a sus clientes por correo electrónico o por teléfono. El cupón se aplicará automáticamente al pedido cuando alguien siga el enlace. Los usuarios que reciben el enlace pueden compartirlo con otros usuarios, por lo que es posible que desee agregar algunas otras condiciones para asegurarse de que solo los clientes que desea tengan acceso al descuento.

 // Aplicar cupón en el parámetro URL (?co=enlace personalizado)
add_action('woocommerce_before_cart', 'QuadLayers_url_coupon');
 
función QuadLayers_url_coupon() {
       $coupon_code = 'todos los productos';
   if(isset($_GET['co'])&&!empty($_GET['co']) ):
       $url_p=$_GET['co'];
       if($url_p=='enlace personalizado'):
           printf('<div class="woocommerce-message">¡Un producto solicita un descuento!%lt;/div>');
                   if ( WC()->cart->has_discount( $coupon_code ) ) return;
                   WC()->carrito->aplicar_cupón( $código_cupón);
                   wc_print_avisos();
       demás:
                   WC()->carrito->remove_coupons( sanitize_text_field( $coupon_code ));
                   wc_print_avisos();  
                   WC()->carrito->calcular_totales();
       terminara si;
   terminara si; 
}

Como puede ver, el enlace personalizado que usamos arriba es https://my.web?co=custom-link .

Bono: aplicar cupones a ciertos productos

Una opción interesante es la de aplicar automáticamente cupones de WooCommerce a productos específicos . De esta manera, puede hacer que algunos productos sean más atractivos para atraer inicialmente a los clientes y luego intentar venderlos con otros artículos.

Para hacer esto, use la siguiente secuencia de comandos y cambie la matriz $products_id() con sus propios ID de producto.

 add_action('woocommerce_before_cart', 'QuadLayers_apply_matched_id_products');
función QuadLayers_apply_matched_id_products() {  
    
    // cupón creado previamente;
    $código_cupón = 'auto_cupón'; 
    // esta es la matriz de ID/s de su producto  
    $product_ids = matriz (664,624,619); 
    // Aplicar cupón. El valor predeterminado es falso
    $aplicar=falso;
 
    // bucle de productos agregados al carrito
    foreach ( WC()->carrito->get_cart() as $cart_item_key => $cart_item ) {                      
        if ( in_array( $cart_item['product_id'], $product_ids )):              
            // ID de coincidencia de producto
            $aplicar=verdadero;
            descanso;                     
        terminara si;  
    }
    // aplicar y eliminar cupón
    si ($aplicar==verdadero):
        WC()->carrito->aplicar_cupón( $código_cupón);
        wc_print_avisos();  
    demás:    
        WC()->carrito->remove_coupons( sanitize_text_field( $coupon_code ));
        wc_print_avisos();   
        WC()->carrito->calcular_totales();    
    terminara si; 
}

Para ver más ejemplos como este, echa un vistazo a nuestra guía para crear y aplicar cupones mediante programación.

Cómo excluir productos de los cupones

Alternativamente, puede excluir ciertos productos de los cupones para que los descuentos no se apliquen a ellos. Esta puede ser una opción interesante si vendes artículos que ya tienen descuento como productos empaquetados o productos que tienen márgenes bajos.

La buena noticia es que puede hacerlo desde el panel de administración de WordPress. Vaya a Productos > Todos los productos , coloque el cursor sobre el producto que desea excluir de los cupones y anote el ID del producto .

Luego, ve a Apariencia > Editor de temas > Funciones de temas y abre el archivo functions.php . Después de eso, pegue el siguiente código reemplazando PRODUCT_ID con la ID de su producto.

 add_filter('woocommerce_coupon_is_valid_for_product', 'quadlayers_exclude_product_from_product_promotions', 9999, 4);
function quadlayers_exclude_product_from_product_promotions( $válido, $producto, $cupón, $valores) {
// REEMPLAZAR EL ID DEL PRODUCTO (EG 145)
if ( ID_PRODUCTO == $producto->get_id() ) {
$válido = falso;
}
devolver $válido;
}

¡Eso es! El producto que elijas no se verá afectado por los cupones.

Este es un ejemplo simple, pero hay mucho más que puedes hacer. Para obtener más información al respecto, consulte nuestro tutorial para excluir los productos de WooCommerce de los cupones.

Conclusión

En definitiva, ofrecer cupones a sus compradores es una excelente manera de mejorar la experiencia del cliente y aumentar sus ventas. Además, al ofrecer a sus clientes descuentos exclusivos, es más probable que se vuelvan leales a su tienda.

Sin embargo, asegúrese de ofrecer los descuentos en el momento adecuado. Dar códigos de cupón demasiado pronto o demasiado tarde puede no tener el efecto esperado, así que utilícelos de manera inteligente.

En esta guía, hemos visto que las opciones de cupones que WooCommerce tiene por defecto tienen algunas limitaciones. Al aprender a aplicar cupones de WooCommerce automáticamente, facilitará la vida de sus usuarios y mejorará su experiencia de compra en su sitio.

Hemos visto diferentes ejemplos para aplicar cupones automáticamente en diferentes situaciones que te ayudarán a llevar tu tienda al siguiente nivel. Para obtener más guías sobre los cupones de WooCommerce, asegúrese de consultar las siguientes publicaciones:

  • Cómo configurar cupones en WooCommerce
  • Cómo crear cupones de WooCommerce mediante programación (con ejemplos)
  • Editar campos de código de cupón de WooCommerce

¿Ha probado alguno de los scripts anteriores en su sitio? ¿Funcionaron como se esperaba? ¡Cuéntanos tus experiencias en la sección de comentarios a continuación!