Soporte » Plugins y Hacks » WooCommerce » Limitar carrito a un solo producto

  • Estoy creando una tienda online la cual solo debe permitir un único producto en el carrito, o sea, que no haya posibilidad de añadir un segundo producto. Encontré el siguiente código que lo hace posible:

    add_filter( 'woocommerce_add_cart_item_data', 'mk_only_one_item_in_cart', 10, 1 );
    
    function mk_only_one_item_in_cart( $cartItemData ) {
    	wc_empty_cart();
    
    	return $cartItemData;
    }*/

    Hasta ahí todo bien, pero uno de los productos de la tienda exige que se añada un segundo producto, o sea una venta forzada. Sería posible modificar ese código para que ese producto en concreto admitiera dos productos en el carrito? No sé si me hago explicar.

    Muchas gracias!

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Hola @crimsonhack No entiendo bien lo que deseas hacer. ¿Quieres que no se pueda agregar más de dos productos per en algunos casos se agregue solo 2?

    Iniciador del debate crimsonhack

    (@crimsonhack)

    Hola @cehojac Disculpa por no explicarme bien, voy a tratar de explicarme mejor. La intención de la tienda es que el cliente solo pueda añadir un único artículo al carrito, eso lo conseguí con el código que mencioné anteriormente.

    Lo que pretendo hacer es que en ciertos productos el carrito pueda admitir dos artículos en lugar de uno. Te pongo en contexto.

    La tienda es para un instituto, quieren ofrecer el pago de las matrículas online. Cada matrícula es un artículo (aka producto), lo seleccionan y se añade al carrito para ser pagado. El caso es que una de las matrículas que ofrecen exige una venta forzada, eso quiere decir que se añadirá obligatoriamente un segundo artículo al carrito, pero ese código no me lo permite dado que exige solo un artículo en el carrito.

    Lo que pregunto es si se puede modificar ese código para añadir una excepción a esa matrícula que exige una venta forzada. O sea, decirle al código que haga su función pero que haga una excepción con ese artículo (supongo que por ID de producto) en concreto.

    Espero haberme expresado mejor.

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Debes estar registrado para responder a este debate.