• Buenas tardes he creado una funcion para que si pasa de una determinada cantidad me añada un producto, el problema es que lo hace sumando todo el carrito y lo que quiere es que sea por linea
    EJEMPLO:
    PRODUCTO 3 UNIDADES 30 €
    PRODUCTO 2 2 UNIDADES 20 €

    add_action( 'template_redirect', 'add_product_to_cart' );
    function add_product_to_cart() {
    if ( WC()->cart->get_cart_contents_count() <= 5 ) {
    WC()->cart->add_to_cart( 141 );
    }
    }

    Necesitaría que fuera individual, por linea no total.
    Alguien puede ayudarme.

    Gracias

    • Este debate fue modificado hace 4 años, 10 meses por LGrusin. Razón: Código
Viendo 13 respuestas - de la 1 a la 13 (de un total de 13)
  • Hola @carloswebio

    Para entenderlo..

    Lo que quieres es añadir un producto en el caso en el que el todal de unidades o el total de productos sea 5 o más..

    Total unidades o total productos?

    Saludos y ánimo!

    Iniciador del debate carloswebio

    (@carloswebio)

    Perdón quiza no me expresado bien, quiero que me cuente el total de unidades por producto para que si cumple la condición inserte un producto.
    Pero tiene que ser el total individual

    PRODUCTO UNIDADES IMPORTE TOTAL
    LAPIZ 2 5 10
    CUADERNOS 3 2 6

    Quiero sacar el valor total de unidades por producto de manera individual:

    LAPIZ «2 unidades»
    CUADERNOS » 3 unidades»

    Lo que tengo ahora me suma el total del carrito
    5 unidades
    y eso no me vale.

    Gracias

    Si te he entendido bien, esto es lo que quieres, no?

    add_action( 'template_redirect', 'add_product_to_cart' );
    
    function add_product_to_cart() {
    
    	global $woocommerce;
    	$items = $woocommerce->cart->get_cart();
    
    	foreach($items as $item => $values) { 
    		
    		if ( $values['quantity'] >= 5 ) {
    			WC()->cart->add_to_cart( 141 );
    		}
    	} 
    
    }

    Ya me dices a ver qué tal…

    Saludos y ánimo!

    Iniciador del debate carloswebio

    (@carloswebio)

    Pues tiene buena pinta, lo pruebo y te comento.

    Gracias y ¡ánimo queda un día menos!

    Claro, ya me dices si se adapta a tus necesidades o hay que hacer algún cambio.

    Venga, ánimo!!

    Iniciador del debate carloswebio

    (@carloswebio)

    Tengo un problema, con ese código cada vez que actualizo (f5) me inserta el numero de productos que tengo en el producto superior.

    Ejemplo. INICIO con un producto

    Cuando se pasa de las unidades, automaticamente me pone un producto (fianza)

    Pero cada vez que doy (f5) incluye nuevamente un producto mas en la fianza.

    Lo que quisiera es que cuando pasa de un determinado numero de unidades, llame a un producto para incluir una fianza, ese producto lleva la cantidad.

    Espero haberme explicado.

    Gracias Oscar.

    Buenas @carloswebio

    No entiendo muy bien, la verdad.

    Lo que creo que te he entendido es que sólo se pueda añadir una vez o una cantidad del producto que tu llamas fianza, es así?

    Es decir, nunca puede existir ese producto fianza con 2 unidades, es eso?

    Saludos.

    Iniciador del debate carloswebio

    (@carloswebio)

    No es del todo cierto,
    La idea es que cuando un producto tenga mas de 5 porciones, se incluya una fianza.
    Y siempre es así.

    Ejemplo.
    Venta de Raciones de paella.
    Se solicitan las raciones de una paella y esta lleva asociada una fianza en base al nº de raciones.
    Y así con todos las raciones de paellas.

    Una paella marisco para 6 personas (6 raciones) se incluye la fianza sobre esta paella.

    Una paella vegetal para 6 personas (6 raciones) se incluye nuevamente otra fianza sobre esta paella.

    En este caso el producto fianza al incorporar otra paella de otro sabor se incluya una unidad mas

    No se si me explicado bien.

    Saludos

    jajaja…

    Para salir de dudas…

    El producto fianza siempre es el mismo, verdad? No hay diferentes tipos de productos fianza por diferente producto, verdad?

    Y ahora… Y si piden 11 raciones o 16 raciones de un producto? Sólo se añade una unidad del producto fianza o se añaden 2 (en el caso de 11 raciones) o 3 (en elcaso de 16 raciones) y así sucesivamente?

    A ver qué me cuentas..

    Saludos.

    Iniciador del debate carloswebio

    (@carloswebio)

    Si hay productos fianzas con importes diferentes
    FIANZA 5 € ( hasta 3 raciones)
    FIANZA 7 € ( hasta 6 raciones)
    FIANZA 10 € ( hasta 14 raciones)

    Estas fianzas se aplican segú el nº de raciones por producto paella

    paella valenciana 3 raciones se incorporará automaticamente el producto fianza 5 €
    paella marisco 6 raciones se incorporará automaticamente el producto fianza 7 €
    paella de verduras 3 raciones se incorporará automaticamente una unidad más al producto fianza 5 €

    Espero que me haya explicado

    Gracias por tu interés

    No, si interés si pero claro, esto complica bastante la cosa.

    Ya no estamos hablando de un problema o una duda, esto es un desarrollo de un plugin en toda regla.

    Además hay cosas que todavía quedan en el tintero.

    Lo que en un principio era un pequeño snippet se está complicando y tengo la impresión de que se complicará, más.

    No me importaría ayudarte a solucionar un problema o una duda pero el hacer un desarrollo como el que comentas me llevaría algo de tiempo.

    Espero que lo entiendas.

    Saludos y ánimo!

    Iniciador del debate carloswebio

    (@carloswebio)

    Si claro lo entiendo perfectamente, gracias.
    Ire comunicando los avances.
    Gracias de todas formas.

    Saludos y ánimo!!!

    Mucha suerte.

Viendo 13 respuestas - de la 1 a la 13 (de un total de 13)
  • El debate ‘Contar cantidad en carrito woocomerce’ está cerrado a nuevas respuestas.