【发布时间】:2013-09-29 17:25:04
【问题描述】:
我需要找到产品的最低和最高价格,以便我可以使用它来设置价格过滤器的范围。我在 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中直接从产品集合中获取字段的最大值和最小值的最佳方法是什么。
【问题讨论】: