Como añadir un importe mínimo de compra en WooCommerce

Empezamos una nueva categoría donde pondremos los códigos Snippets para WooCommerce que te puedan ser muy útiles.

Pero … ¿Qué es un snippet? (ver definición en la wikipedia)

Muy sencillo, un snippet son pequeñas partes reusables de código fuente que hace una funcionalidad muy sencilla.

¿Donde hay que añadir este snippet?

Para poder colocar este código hay que seguir los siguientes pasos:

  1. Tienes que editar el fichero functions.php que se encuentra en la carpeta de tu child-theme dentro de /wp-content/themes/tu-plantilla-child. Si no tienes creado tu child-theme o tema hijo, mira a ver si en tu plantilla ya tiene creado uno y tan solo lo tienes que subir a tu carpeta de /wp-content/themes/ y activar el tema hijo o si lee este artículo. También puedes usar alguno de los plugins para que lo cree por tí, yo he usado One-Click Child ThemeChild Theme Configurator.
  2. Tienes que ubicarte al final del archivo functions.php y añadir el siguiente código:
// WORDPRESSPAMPLONA.COM - IMPORTE MÍNIMO DE COMPRA 
add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );
// WORDPRESSPAMPLONA.COM - IMPORTE MÍNIMO DE COMPRA

function wc_minimum_order_amount() {
/* A continuación tienes que indicar cuál va a ser el importe mínimo de compra */
$minimum = 10; /*Aquí indica el importe mínimo por ejemplo 10 euros, ojo, pon solo el número */

if ( WC()->cart->total < $minimum ) {

if( is_cart() ) {

wc_print_notice( 
sprintf( 'El importe mínimo para hacer un pedido es de %s , el total de su pedido actual es de %s.' , /* Aquí pon el mensaje que quieras mostrar */
wc_price( $minimum ), 
wc_price( WC()->cart->total )
), 'error' 
);

} else {

wc_add_notice( 
sprintf( 'El importe mínimo para hacer un pedido es de %s , el total de su pedido actual es de %s.' , /* Aquí pon el mensaje que quieras mostrar */
wc_price( $minimum ), 
wc_price( WC()->cart->total )
), 'error' 
);

}
}
}
// WORDPRESSPAMPLONA.COM - FIN IMPORTE MÍNIMO DE COMPRA

Así de fácil …