Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

161
Vistas
Usar variantes de productos Seleccionar en el carrito Prestashop

Estoy desarrollando un módulo de venta cruzada que mostrará productos en el carrito que puede agregar al carrito haciendo clic en el botón Agregar al carrito. Necesito tener en cuenta las variantes del producto (atributos).

Ya descubrí cómo agregar el botón Agregar al carrito a la página del carrito gracias a este código:

 <form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh"> <input type="hidden" name="token" value="{$static_token}"> <input type="hidden" name="id_product" value="{$product->id}" id="product_page_product_id"> <span class="remove-from-cart"> <button class="btn btn-primary add-to-cart" data-button-action="add-to-cart" type="submit" {if (!$product->checkQty(1))} disabled {/if}> <i class="material-icons float-xs-left">shopping_cart</i> {ls="Add to cart" d='Shop.Theme.Actions'} </button> </span> </form>

Pero lo que necesito ahora es actualizar el precio de visualización según el valor elegido con el menú desplegable de valor de opción de selección establecido como en la página de mi producto y usar la identificación de atributo seleccionada para que cuando el usuario haga clic en el botón Agregar al carrito, agregue para cargar el producto con el atributo bueno y no el predeterminado

Estoy seguro de que es del script js que se actualiza el precio, pero realmente no averiguo qué función se encarga de esto.

Esta es la opción de selección como se le preguntó

 <div class="clearfix product-variants-item"> <span class="control-label">ATTRIBUTE_GROUP_NAME</span> <select class="form-control form-control-select" id="group_ATTRIBUTE_GROUP_ID" data-product-attribute="ATTRIBUTE_GROUP_ID" name="group[ATTRIBUTE_GROUP_ID]"> <option value="ATTRIBUTE_ID" title="ATTRIBUTE_NAME" selected="selected">ATTRIBUTE_NAME</option> </select> </div>
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

la solución no es muy simple pero se puede lograr, de la misma manera que prestashop funciona en la página del producto, debe actualizar su contenido con ajax en el cambio de atributo. Desarrollamos un módulo complejo de ventas adicionales al finalizar la compra utilizando el mismo método y funciona bien. Los pasos lógicos son:

-> Se cambia el valor seleccionado

-> enviar los datos a través de ajax

-> obtenga los datos nuevos y actualizados, la mejor opción para mí es volver a mostrar la vista de su módulo y obtener un html como respuesta

-> reemplace su contenido con el nuevo html

Otra forma, no probada porque, en mi opinión, es un poco más compleja, podría ser almacenar en javascript todos los datos sobre todas las variaciones/combinaciones y manejar la lógica allí para obtener los datos de precios que necesita en cada cambio. Un problema con esta solución es que los datos no siempre pueden actualizarse porque se almacenan localmente.

Espero que mi sugerencia ayude, quería comentar, pero mi clasificación aún es demasiado baja y tengo que responder en su lugar.

simone

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda