Informar al cliente de la fecha de envío del producto en WooCommerce

El siguiente fragmento de código PHP es una función que se integra en tu tienda WooCommerce para informar al cliente sobre cuándo se enviará su producto. Esta función se añade como una acción después del formulario «Añadir al carrito» en WooCommerce.

//Función que permite informar de cuándo se enviará el producto
function bf_info_envio() {
    // Viernes, Sábado o Domingo -> Se enviará el lunes.
    if ( date( 'N' ) >= 5 ) {
        $del_day  = date( "l jS F", strtotime( 'next monday' ) );
        $order_by = 'el lunes';
    }

    // De Lunes a Jueves, después de las 3PM -> Se envía mañana.
    elseif ( date( 'H' ) >= 15 ) {
        $del_day  = date( "l jS F", strtotime( 'tomorrow' ) );
        $order_by = 'mañana';
    } 

    // De Lunes a Jueves antes de las 3PM -> Se envía hoy.
    else {
        $del_day  = date( "l jS F", strtotime( 'today' ) );
        $order_by = 'hoy';
    }

    $html = '<br><div class="woocommerce-message" style="clear:both">Pide antes de las 3PM ' . $order_by . ' para que enviemos ' . $del_day . '</div>';

    echo $html;
}
add_action( 'woocommerce_after_add_to_cart_form', 'bf_info_envio' );

 

Cómo funciona

  • Si el día actual es viernes, sábado o domingo, el producto se enviará el próximo lunes.
  • Si es un día laborable y son las 3 PM o más tarde, el producto se enviará al día siguiente.
  • Si es un día laborable y son menos de las 3 PM, el producto se enviará el mismo día.

Modificar Días y Horas de Envío

Para cambiar los días y horas de envío, puedes modificar los siguientes fragmentos en el código:

  • Cambiar el día de envío para fines de semana: Modifica date( 'N' ) >= 5 a los días que desees.
  • Cambiar la hora de corte: Modifica date( 'H' ) >= 15 a la hora que desees.

Por ejemplo, si deseas que el día de corte sea el jueves y la hora sea las 5 PM, cambiarías date( 'N' ) >= 5 a date( 'N' ) >= 4 y date( 'H' ) >= 15 a date( 'H' ) >= 17.

Ejemplos de uso

  1. Para tiendas que cierran los fines de semana: Este código es útil si tu tienda no realiza envíos durante el fin de semana.
  2. Para tiendas con horarios de corte: Si tienes un horario específico después del cual no puedes enviar productos el mismo día, este código es perfecto para ti.

¡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: