如何指定产品收集的自定义排序顺序?
我正在尝试基于产品ID数组创建一个产品集合,并根据ID数组对集合进行排序。 $productIds = array(318,310,311); $collection = Mage::getModel('catalog/product') ->getCollection() ->setOrder('entity_id', 'asc') // This will not do the job ->addAttributeToSelect('*') ->addAttributeToFilter('status', 1) ->addAttributeToFilter('entity_id', array( 'in' => $productIds, )); 我想对收集的数据进行排序,因为它们出现在$productIds数组中,318, 310, 311但是上面的代码将返回收集的排序,如310,311, 312。 如果不使用下面给出的简单MySQL查询,是否可以做到这一点? SELECT * FROM catalog_product_entity WHERE entity_id IN (318, 310, 311) ORDER BY FIELD(entity_id, 318, 310, 311);