2013-09-29 63 views
0

我需要找到产品的最低和最高价格,以便我可以使用它来设置我的价格过滤器的范围。我在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最好的方法是直接从产品集合中获取字段的最大值和最小值。

回答

-3

$ maxPrice = $ this-> getMaxPriceInt();

$ minPrice = $ this-> getMinPriceInt();

相关问题