我需要找到产品的最低和最高价格,以便我可以使用它来设置我的价格过滤器的范围。我在 Catalog/Model/Layer/Filter/Price.php 中使用了 getMaxPriceInt() 和 getMinPriceInt() 方法。但是,返回的值基于“min_price”字段。
如何根据 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中直接从产品集合中获取字段的最大值和最小值的最佳方法是什么。