У меня есть пакет объектов, называемый Map Points, который имеет ссылочное поле терминов таксономии стран. Я использую EntityFieldQuery в настраиваемом модуле для перечисления всех объектов точки карты, но мне нужно сгруппировать их по полю страны.Результаты группы Drupal EntityFieldQuery по таксономии
Вот код, который я имею прямо сейчас, который фильтрует запрос по tid 1, и я знаю, что я могу повторить запрос для каждой страны, чтобы сгруппировать результаты, но я ищу более утонченный способ сгруппировать результаты по country term id, без необходимости писать новый запрос для каждой страны.
$query = new EntityFieldQuery();
$query
->entityCondition('entity_type', 'givepower')
->entityCondition('bundle', 'map_points')
->propertyCondition('type', 'map_points', '=')
->fieldCondition('field_map_point_country', 'tid', '1');
$result = $query->execute();
// set empty map point id array
$map_point_ids = array();
// loop through all givepower entities
foreach($result['givepower'] as $record) {
$map_point_ids[] = $record->id;
}
// load entities
$map_point = entity_load('givepower', $map_point_ids);
// set entity view
$entities = entity_view('givepower', $map_point);
return $entities;