2014-02-14 104 views
0

我遇到了magento排序順序問題。magento社區1.7.0.2產品收集排序不起作用

$productPriceCollection = $products2->addAttributeToSort('mb_rank', 'DESC')->setPageSize("3")->addStoreFilter()->load(); 
    $priceOrderCollection = $productPriceCollection->setOrder('price', 'ASC')->load(); 

什麼我想在這裏做的越來越具有最高mb_rank第3級的產品,然後只有三個價格升序排序,並加載一個清單,我使用的其餘部分的最終名單處理。

但我總是得到價格降序的訂單。

我已經嘗試

$priceOrderCollection = $productPriceCollection->addAttributeToSort('price', 'ASC')->load(); 

沒有區別。

我在這裏做錯了什麼?

最好

+0

你的屬性是什麼類型(text,select,int)? – Marius

+0

價格字段類型是價格。 – circass

+0

我在說'mb_rank' – Marius

回答

0

我莫名其妙地發現一半的解決方案中,所有如果你使用文本框首先,Magento的將不能正確排序,您需要使用價格作爲字段類型到您的整數值正確地排序。否則,它將被計爲一個字符串值。

爲前三個結果添加第二種排序對我而言仍然不起作用。

0

對此評論抱歉。我剛剛意識到,屬性類型對您的情況並不重要。
問題是您正在使用->load作爲您的收藏。
加載收藏集後,您無法修改其上的訂單或過濾器。
像這樣嘗試。

$productPriceCollection = $products2->addAttributeToSort('mb_rank', 'DESC') 
    ->setPageSize("3") 
    ->addStoreFilter() 
    ->addAttributeToSort('price', 'ASC') 
    ->load(); 
+0

感謝您的回答,我會在5分鐘內嘗試並讓您知道結果。 – circass

+0

不幸的是,這次只有價格排序,mb_rank排序沒有任何影響。 – circass

+0

確保你重建了索引。 – Marius