Cómo aplicar el cupón de descuento automáticamente al carrito de WooCommerce
Publicado: 2020-06-25Los descuentos son una excelente manera de aumentar las ventas y ayudan a construir una buena relación con el cliente. Es una forma de atraer a sus clientes para que regresen a su tienda y la compren nuevamente.
WooCommerce también ofrece una función para que los propietarios de las tiendas agreguen cupones de descuento para sus clientes. Y utilizan diferentes formas de comunicarse con sus clientes para obtener los cupones, como enviarles correos electrónicos, agregar un banner en su sitio web, etc. Pero a veces es posible que los clientes olviden aplicar el cupón durante el pago.
Entonces, si como propietario de una tienda no desea que sus clientes compren productos sin usar cupones de descuento, debe encontrar una manera de que los cupones se apliquen automáticamente al carrito cuando los clientes compren. Se puede hacer proporcionando URLs de códigos de cupones a los clientes a través de correos electrónicos o agregándolos en el sitio web, que al hacer clic, el cupón se aplicará automáticamente al carrito. O la forma más sencilla de lograr esto es aplicar el código de cupón automáticamente cuando un cliente agrega un producto al carrito.
En WooCommerce en este momento no existe la opción de aplicar los cupones de descuento automáticamente , pero es posible lograrlo agregando un fragmento de código o usando algunas de las extensiones disponibles.
Uso de un fragmento de código
Tomemos un ejemplo aquí, donde el dueño de la tienda quiere dar un descuento del 20% para los pedidos valorados en más de $250 con motivo de Halloween o Black Friday o Navidad y quiere que ninguno de sus clientes se pierda el descuento. Entonces, para lograr esto, hay 2 formas que discutiremos a continuación.
1. Aplicar el código de cupón directamente al carrito cuando se agrega el producto
Para esto, el primer paso es crear un código de cupón en WooCommerce con una restricción de uso de gasto mínimo de $ 250 en el menú Agregar nuevo cupón / Editar cupón -> Restricciones de uso.

El cupón se agrega según los requisitos del propietario, pero como ingresar el cupón todavía es un proceso manual aquí, es muy posible que el cliente olvide usar el código de cupón. Entonces, la mejor manera de evitar esto es aplicar el código automáticamente al carrito. Esto se puede lograr agregando el siguiente código al archivo functions.php del tema secundario o usando cualquier complemento de fragmentos de código.
/** * Aplicar cupón de descuento automáticamente al carrito */ función ts_apply_discount_to_cart() { $order_total = WC()->carrito->get_subtotal(); if( $total_pedido > 250 ) { $código_de_cupón = '20% DE DESCUENTO'; if ( !WC()->carrito->add_discount( sanitize_text_field( $coupon_code ) ) ) { WC()->mostrar_mensajes(); } } } add_action('woocommerce_before_cart_table', 'ts_apply_discount_to_cart');
Aquí hemos utilizado el gancho woocommerce_before_cart_table que se encuentra en el formulario del carrito de WooCommerce antes de mostrar la tabla del carrito. En este gancho, estamos verificando el total del pedido y si el total del pedido es de $ 250 o más, entonces estamos aplicando el cupón '20% de DESCUENTO' al carrito usando la función add_discount().

2. Uso de URL de códigos de cupones
Otra forma de aplicar el código de cupón directamente al carrito es proporcionar las URL del código de cupón a los clientes mediante el envío de correos electrónicos, boletines informativos o su publicación en el sitio web en un banner. Entonces, cuando un cliente hace clic en la URL y si el producto ya está agregado al carrito, el código de cupón se aplicará automáticamente.
Para lograr esto, debe agregar el siguiente código en el archivo functions.php de su tema secundario.
/** * Establezca la variable de sesión en la carga de la página si la cadena de consulta tiene una variable de código de cupón. */ función ts_get_custom_coupon_code_to_session() { if( isset( $_GET[ 'codigo_cupon' ] ) ) { // Asegurarse de que se inicie la sesión del cliente if( !WC()->sesion->has_session() ) WC()->sesión->set_customer_session_cookie(true); // Comprobar y registrar el código de cupón en una variable de sesión personalizada $código_cupón = WC()->sesión->get( 'código_cupón' ); if( vacío( $código_cupón ) && isset( $_GET[ 'código_cupón' ] ) ) { $código_cupón = esc_attr( $_GET[ 'código_cupón' ] ); WC()->sesión->set( 'código_cupón', $código_cupón ); // Establecer el código de cupón en la sesión } } } add_action('init', 'ts_get_custom_coupon_code_to_session'); /** * Aplicar código de cupón al carrito si la sesión tiene la variable código_cupón. */ función ts_apply_discount_to_cart() { // Establecer código de cupón $código_cupón = WC()->sesión->get( 'código_cupón' ); if ( ! vacío( $código_cupón ) && ! WC()->carrito->tiene_descuento( $código_cupón ) ){ WC()->carrito->add_discount( $código_cupón); // aplicar el cupón de descuento WC()->sesión->__unset('código_cupón'); // eliminar el código de cupón de la sesión } } add_action('woocommerce_before_cart_table', 'ts_apply_discount_to_cart', 10, 0);
Aquí hemos usado dos ganchos init y woocommerce_before_cart_table. Donde en el gancho de inicio estamos comprobando si la URL actual contiene la variable de consulta de código de cupón o no y si contiene, entonces el valor de la variable se almacena en la sesión de WooCommerce. En el gancho woocommerce_before_cart_table, estamos comprobando que si la variable de código de cupón está configurada en la sesión de WooCommerce, aplique ese código de cupón al carrito.

Después de agregar el código anterior, puede usar la siguiente URL para enviárselo a sus clientes.
https://mywebsite.com/?coupon_code=20OFFNavidad
O si desea redirigir la URL directamente al carrito o a la página de pago después de aplicar el cupón, puede usar las URL a continuación.
https://mywebsite.com/cart/?coupon_code=20OFFNavidad
https://mywebsite.com/checkout/?coupon_code=20OFFNavidad

Una vez que el cupón se aplica al carrito, no desea que sus clientes agreguen otro cupón al mismo carrito. Por lo tanto, es mejor ocultar el campo del código de cupón en el carrito y en la página de pago. Aquí hay otra publicación que explica cómo ocultar el campo de código de cupón de WooCommerce.
Uso de extensiones de WooCommerce
Otra forma de lograr esto es mediante el uso de diferentes extensiones de WooCommerce que le permiten aplicar el código de cupón automáticamente al carrito. A continuación se muestran algunas de las extensiones:
- Cupones inteligentes: este complemento tiene todo lo que necesita para aumentar las ventas y los clientes mediante descuentos, cupones, créditos, vales, obsequios de productos, ofertas y promociones. Es el complemento de gestión de cupones más vendido y completo para WooCommerce.
- Cupones de URL de WooCommerce: la extensión de cupones de URL de WooCommerce lo ayuda a crear URL únicas que aplican automáticamente un descuento y productos al carrito de compras del cliente. Puede cambiar a dónde se redirige al cliente después de visitar la URL única, y sus cupones de URL seguirán obedeciendo todas las restricciones de cupones, como las restricciones de uso.
- Cupones avanzados: los cupones avanzados amplían las funciones de sus cupones para que pueda comercializar mejor su tienda.
- Funciones de cupón extendido de WooCommerce GRATIS: "Características de cupón extendido de WooCommerce" agrega funcionalidad a los cupones de WooCommerce y permite reglas de descuento automáticas. Muy fácil de usar, la funcionalidad está convenientemente integrada en el panel de edición de cupones de WooCommerce.
- Cupones automáticos para WooCommerce: es un complemento simple y liviano que solo permite que los cupones se apliquen automáticamente al carrito si se cumplen las reglas establecidas.
Por lo tanto, puede usar los fragmentos de código o los complementos para ofrecer al cliente un descuento imperdible para las compras.