Eliminar Producto del Carrito Automáticamente en WooCommerce

Cómo Funciona

Este snippet busca un producto específico en el carrito de compras de WooCommerce mediante su ID de producto. Si encuentra el producto, lo elimina automáticamente del carrito. El código se ejecuta en el hook template_redirect, lo que garantiza que el producto se elimine antes de que el usuario llegue a la página de pago o cualquier otra página del sitio.

//Función que elimina producto del carrito automáticamente.
function bf_remove_from_cart_auto() {
    $product_id      = 282; // Modifica el id de producto aquí
    $product_cart_id = WC()->cart->generate_cart_id( $product_id );
    $cart_item_key   = WC()->cart->find_product_in_cart( $product_cart_id );

    if ( $cart_item_key ) {
        WC()->cart->remove_cart_item( $cart_item_key );
    }
}
add_action( 'template_redirect', 'bf_remove_from_cart_auto' );

Instalación del Snippet

  1. Abre el archivo functions.php de tu tema de WordPress.
  2. Copia y pega el snippet en el archivo.
  3. Guarda los cambios y actualiza tu sitio web.

Casos de Uso

  1. Promociones Temporales: Si tienes una promoción donde un producto se añade automáticamente al carrito pero debe ser eliminado después de cierto tiempo.
  2. Productos Complementarios: Si tienes productos que solo deben comprarse junto con otros productos y deseas evitar que los clientes compren el producto por separado.
  3. Control de Stock: Si un producto está agotado o ya no está disponible, puedes usar este snippet para asegurarte de que se elimine del carrito.

Personalización

Para personalizar el ID del producto que deseas eliminar, modifica la siguiente línea:

$product_id = 282; // Modifica el id de producto aquí

Reemplaza 282 con el ID del producto que deseas eliminar del carrito.

Precauciones

  • Asegúrate de probar el snippet en un entorno de desarrollo antes de implementarlo en un sitio en vivo.
  • Este snippet solo funciona si WooCommerce está instalado y activo en tu sitio de WordPress.

Con este snippet, puedes mejorar la experiencia de compra en tu tienda WooCommerce al tener un control más preciso sobre los productos en el carrito de tus clientes.

Web de referencia

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