是否可以使用 id 数组过滤 Magento 集合,但集合结果按传递给过滤器的 id 顺序排序。
例如:
$collection = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToFilter('entity_id', array(
'in' => array(1, 3, 2),
));
我希望集合中的产品按顺序排列,1、3、2,以便在循环浏览集合时它们以特定顺序出现?
我目前唯一的选择是手动创建一系列产品:
$productIds = array(1,3,2);
$collection = array();
foreach($productIds as $productId) {
$collection[] = Mage::getModel('catalog/product')->load($productId);
}
这显然有效,但似乎是一种丑陋的方法。
有没有办法纯粹通过 magento 收藏来做到这一点?