MODX Revo自定义排序顺序为getCollection

时间:2012-10-15 07:18:52

标签: php modx modx-revolution

我有一个id为的数组:

$ids = array(240, 12, 400);

我希望用$modx->getCollection('modResource');

按顺序获取这些对象

我该如何实现?

如果我喜欢这样:

$res = $modx->getCollection('modResource', array(
    'id:IN' => $ids
));

这些方框符合ASC顺序,但我希望它们按此顺序排列:240,12 400 ...

1 个答案:

答案 0 :(得分:2)

试试这个:

$criteria = $modx->newQuery('modResource');
$criteria->sortby('FIELD(modResource.id, '.implode(',',$ids).' )', 'DESC');
$criteria->where(array(
    'id:IN' => $ids
));
$res = $modx->getCollection('modResource', $criteria);