¿Cuál sería una buena manera de recuperar los precios más bajos y más altos posibles para un producto configurable dado, en función de sus opciones disponibles?
Por ejemplo, una camiseta viene en los siguientes tamaños y precios:
Small - $10
Medium - $20
Large - $30
Quiero obtener una matriz así:
array(10, 30)
Mi mejor idea hasta ahora es cargar la instancia de tipo de producto configurable y usar getUsedProducts
, luego crear una matriz de precios, ordenar y dividir.
Eso debería funcionar, sin embargo, esto debe ejecutarse en la plantilla de la lista de productos, por lo que debe ser semi eficiente.
¿Alguna otra persona ha enfrentado este problema antes?
EDITAR: eso no funcionará ya que quiero el valor de precio configurable, es decir, el precio aditivo que magento pone por encima del precio del producto configurable
fuente
Una más simple
fuente
Esta respuesta , también de @Marius, a una pregunta similar es una buena base para trabajar. Usando eso, aquí hay una solución a este problema que tiene en cuenta el potencial de productos configurables que tienen múltiples atributos que cambian el precio.
Lo escribí como una función que toma una identificación de producto configurable y devuelve una cadena de precio mínimo a máximo. Debe quedar bastante claro cómo trabajarlo en el contexto que necesita.
fuente
Esto hará el truco, aunque no es el mejor ejemplo.
fuente
Usando EE 1.14, estaba obteniendo números "divertidos" usando los métodos propuestos anteriormente por alguna razón. El
$childPriceLowest
y$childPriceHighest
no estaban devolviendo los valores mínimos y máximos verdaderos todo el tiempo. A veces, con múltiples opciones de configuración, etc. Vi valores intermedios.Terminé usando esto:
Luego, más tarde, esto para hacer eco del rango:
(por ejemplo, "$ 10.00 - $ 30.00")
fuente
También puede probar este código simple para obtener el precio más alto / más bajo según su necesidad
fuente