Aviso de envío gratis en WooCommerce: Implementar un umbral de gasto mínimo

El siguiente fragmento de código PHP es para WooCommerce y tiene como objetivo mostrar un aviso en el carrito de compras cuando el usuario no ha alcanzado un umbral de gasto mínimo para obtener envío gratis.

//Función que prioriza los productos en stock

function bf_priorize_stock( $args ) {
    $args['orderby']  = 'meta_value';
    $args['order']    = 'ASC';
    $args['meta_key'] = '_stock_status';
    return $args;
}
add_filter( 'woocommerce_get_catalog_ordering_args', 'bf_priorize_stock', 9999 );

Ejemplos de Uso

  1. Tienda de Ropa: Si tienes una tienda de ropa y ofreces envío gratis para compras superiores a 100€, puedes usar este snippet para motivar a los clientes a añadir más artículos al carrito.
  2. Librería Online: Si tienes una librería online y ofreces envío gratis para compras superiores a 50€, este snippet puede ayudar a informar a los clientes cuánto más necesitan gastar para no pagar por el envío.
  3. Venta de Electrónicos: Si tienes una tienda de electrónicos y ofreces envío gratis en compras superiores a 200€, puedes usar este snippet para informar a los clientes cuánto más necesitan gastar para obtener el envío gratuito.

Funcionamiento Detallado del Código

El código es un snippet de PHP diseñado para trabajar con WooCommerce, el popular plugin de comercio electrónico para WordPress. Veamos cada parte del código:

  • function bf_free_shipping_cart_notice(): Esta es la función que contiene todo el código para mostrar el aviso de envío gratis. Se ejecutará cuando se cumpla la condición del hook woocommerce_before_cart.
  • $umbral = 50;: Esta línea establece el umbral de gasto mínimo para el envío gratis. En este caso, el umbral está configurado en $50, pero puedes cambiarlo según tus necesidades.
  • $current = WC()->cart->get_subtotal();: Aquí, la función get_subtotal() de WooCommerce se utiliza para obtener el subtotal actual del carrito de compras.
  • if ( $current < $umbral ): Esta es una declaración condicional que verifica si el subtotal del carrito es menor que el umbral establecido.
  • wc_print_notice( '¡Gasta ' . wc_price( $umbral - $current ) . ' más y el envío será gratis!', 'notice' );: Si la condición anterior es verdadera, se mostrará un aviso en el carrito. La función wc_price() formatea el precio para que se muestre correctamente.
  • add_action( 'woocommerce_before_cart', 'bf_free_shipping_cart_notice' );: Finalmente, esta línea añade la función bf_free_shipping_cart_notice al hook woocommerce_before_cart, lo que significa que la función se ejecutará antes de que se muestre el carrito de compras en la página.

¡Más Snippets, Más Opciones!

Al compartir, motivamos a más desarrolladores a contribuir. Ayúdanos a hacer de este directorio un punto de referencia en snippets.

Facebook
Twitter
LinkedIn
Telegram
WhatsApp

¿Cómo implementar este snippet en la web?

Tienes 2 opciones, una de ellas es mediante plugin y la otra pegando el código en tu web.

1. Añadir snippet con plugin

code-snippets

Code Snippets

Por Code Snippets Pro

  1. Descarga el plugin o búscalo en el repositorio de plugins de Wordpress e instálalo en tu web.
  2. En el menú lateral del Escritorio verás un nuevo enlace (Fragmetos de código). Ves a Fragmentos de código > Añadir nuevo.
  3. Se abrirá una página con un título, bloque de código, descripción y etiquetas, rellena el título con el que quieras guardarlo, ejemplo: Añadir Google Analytics.
  4. En la parte código verás que está activo PHP, ahí pega el código del snippet
  5. La descripción y las etiquetas solo son para tu información y para que luego encuentres más fácil los snippets.
  6. Publicar y activar el snippet.

2. Añadir snippet en el functions.php

Diseño web con WordPress

Accede al archivo functions.php de tu tema o tema hijo, pega el snippet y guarda el archivo.

Lo encontrarás en Apariencia > Editor de archivos de tema, pinchas sobre el enlace  functions.php y pegas el código al final del archivo.

Relacionados: