Desactivar la redirección del Checkout en WooCommerce cuando el carrito está vacío

En este snippet, aprenderemos cómo desactivar la redirección automática a la página del carrito en WooCommerce cuando el carrito está vacío. Este comportamiento puede ser útil en ciertos escenarios que discutiremos más adelante.

Por defecto, WooCommerce redirige a los usuarios a la página del carrito cuando intentan acceder al checkout con el carrito vacío. Sin embargo, hay situaciones en las que podrías querer evitar esta redirección. Este snippet de código PHP te ayudará a lograrlo.

Cómo Funciona

El snippet utiliza dos filtros de WooCommerce:

  1. woocommerce_checkout_redirect_empty_cart: Este filtro se encarga de la redirección cuando el carrito está vacío.
  2. woocommerce_checkout_update_order_review_expired: Este filtro se encarga de actualizar la revisión del pedido en el checkout.

Ambos filtros están configurados para retornar false, lo que desactiva la funcionalidad predeterminada.

add_filter( ‘woocommerce_checkout_redirect_empty_cart’, ‘__return_false’ );
add_filter( ‘woocommerce_checkout_update_order_review_expired’, ‘__return_false’ );

Casos de Uso del Snippet

Aquí hay algunas situaciones en las que este snippet podría ser útil:

  1. Flujos de Compra Personalizados: Si tienes un flujo de compra muy personalizado, la redirección automática podría interrumpir la experiencia del usuario.
  2. Páginas de Checkout Personalizadas: Si estás utilizando una página de checkout personalizada, es posible que no quieras que los usuarios sean redirigidos.
  3. Pruebas y Desarrollo: Durante la fase de desarrollo, podrías necesitar acceder al checkout sin productos en el carrito para realizar pruebas.

Cómo Implementar el Snippet

Para implementar este snippet, sigue estos pasos:

  1. Abre el archivo functions.php de tu tema de WordPress.
  2. Copia y pega el código del snippet en el archivo.
  3. Guarda los cambios y limpia la caché de tu sitio web si es necesario.
//Función que desactiva redirección del checkout cuandoel carrito está vacío
add_filter( 'woocommerce_checkout_redirect_empty_cart', '__return_false' );
add_filter( 'woocommerce_checkout_update_order_review_expired', '__return_false' );

 

Conclusión

Desactivar la redirección automática del checkout en WooCommerce puede ser útil en varios escenarios. Con este sencillo snippet, puedes lograrlo de manera efectiva y sin afectar otras funcionalidades de tu tienda en línea.

¡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

¿Necesitas un snippet? Pídenoslo

¿No encuentras el código que necesitas? Pídenoslo y te ayudamos. También puedes publicar tus snippets.

¿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.

condiciones de uso diseño web

¿Necesitas un snippet?

Cuéntanos que necesitas e intentaremos crear un snippet que lo realice. Si lo conseguimos, lo publicaremos y te avisaremos por correo.

¡Comparte tu snippet!

Si has creado un snippet y quieres compartirlo, envíanoslo y lo publicaremos enlazando tu web debajo de la publicación.

Relacionados:

Enviar contenido a mi correo

Guárdarte el contenido en tu correo para probarlo más tarde.