Please submit a private ticket if you need to share sensitive information, such as license details and admin credentials.

Okay
  Public Ticket #4310982
Solicitud de mejora
Open

Comments

  • Cristina started the conversation

    Hola ,

    Soy usuaria de su plugin prima para WooCommerce y me gustaría proponer una mejora que considero muy útil para muchas tiendas online.

    Actualmente, el sistema de "Precios por cantidad" cuenta cada variación de producto (por ejemplo, talla o color) como artículos independientes. Esto provoca que, si establecemos un pedido mínimo o un descuento por tramos, el cliente tenga que llegar a ese mínimo dentro de una sola variación.

    Ejemplo del problema:

    • Pedido mínimo: 10 unidades.
    • Cliente selecciona:
      • 4 camisetas talla S
      • 6 camisetas talla M
    • Total: 10 unidades.
      Sin embargo, el plugin no lo reconoce como válido porque no hay 10 unidades en una sola variación.

    Propuesta: Implementar una opción para sumar las cantidades de todas las variaciones del mismo producto y aplicar el precio por cantidad o la restricción de pedido mínimo sobre el total combinado.

    Este cambio sería muy útil para negocios que venden productos personalizados o con múltiples variaciones, ya que permitiría a los clientes combinar tallas y colores dentro del mismo producto sin perder las ventajas del sistema de precios por cantidad.

    Quedo a disposición para ampliar detalles y espero que puedan considerar esta mejora en próximas actualizaciones.

    Gracias por su atención y gran trabajo.

    Atentamente

  •  1,508
    Dustin replied

    Hi Cristina,

    We have a snippet available for this case and will add an official option soon.

    Please add the custom code below. (How to add custom code? ↗):

    add_filter( 'wpcpq_cart_item_quantity', function ( $quantity, $cart_item, $cart_item_key ) {
    	if ( $cart_item['data']->is_type( 'variation' ) ) {
    		$parent_id = $cart_item['data']->get_parent_id();
    		$quantity  = 0;
    
    		foreach ( WC()->cart->get_cart() as $c_item ) {
    			if ( $c_item['data']->get_parent_id() == $parent_id ) {
    				$quantity += $c_item['quantity'];
    			}
    		}
    	}
    
    	return $quantity;
    }, 99, 3 );

    Let me know if it works as expected.

    Best regards,
    Dustin