我需要找到产品的最低和最高价格,以便我可以使用它来设置我的价格过滤器的范围。我在Catalog/Model/Layer/Filter/Price.php中使用了getMaxPriceInt()和getMinPriceInt()方法。但是,返回的值基于'min_price'字段。根据magento的最终价格获得集合中产品的最高和最低价格
如何根据final_price找出集合中产品的最低和最高价格?也就是说,如果有4种产品的集合中(我只争取所需的字段)
prodid min_price final_price
3 5200 5900
44 8347 8900
54 4536 5765
12 7436 7500
的getmaxpriceint()和getminpriceint()分别返回我的8347和4536。
我的结果应该分别是8900和5765。是否可以对Price.php中的现有方法进行一些更改以实现它或者是否有其他选择?
我不想循环产品,并得到数组中的最终价格和排序,因为我觉得,它不会是优化的方法。我也不想使用setOrder(),然后获取最小和最大价格,因为它会影响集合的排序顺序。
一般情况下,您可以请求magento最好的方法是直接从产品集合中获取字段的最大值和最小值。
谢谢,它是一个很酷的扩展。我通过修改上述方法中的查询来解决了这个问题。 – Harinniy
如果解决了您的问题,您可以点击复选标记将答案标记为已接受。 – urfusion