首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >magento社区1.7.0.2产品集合排序不起作用

magento社区1.7.0.2产品集合排序不起作用
EN

Stack Overflow用户
提问于 2014-02-14 13:31:09
回答 2查看 733关注 0票数 0

我在马根托的排序上有问题。

代码语言:javascript
复制
    $productPriceCollection = $products2->addAttributeToSort('mb_rank', 'DESC')->setPageSize("3")->addStoreFilter()->load();
    $priceOrderCollection = $productPriceCollection->setOrder('price', 'ASC')->load();

我在这里试图做的是获得前3种产品,其中的mb_rank最高,然后只按价格上升对这3种产品进行排序,并加载该列表,作为我在其余过程中使用的最终列表。

但随着价格的下降,我总是得到订单。

我已经试过了

代码语言:javascript
复制
    $priceOrderCollection = $productPriceCollection->addAttributeToSort('price', 'ASC')->load();

没什么区别。

我在这里做错什么了?

最好的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-17 12:17:10

我不知怎么找到了一半的解决方案,首先,如果使用textfield,Magento将不能正确排序,您需要使用price作为字段类型来正确排序整数值。否则,它将被计算为字符串值。

为前三种结果添加第二种结果在我的情况下仍然不起作用。

票数 0
EN

Stack Overflow用户

发布于 2014-02-14 13:49:30

对你的评论很抱歉。我刚刚意识到,属性类型在您的情况下并不重要。

问题是您正在使用->load作为您的集合。

一旦加载了集合,就无法修改订单或筛选器。

像这样试试。

代码语言:javascript
复制
$productPriceCollection = $products2->addAttributeToSort('mb_rank', 'DESC')
    ->setPageSize("3")
    ->addStoreFilter()
    ->addAttributeToSort('price', 'ASC')
    ->load();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21780741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档