Агрегация по полю таксономии

Главные вкладки

Аватар пользователя Alandr Alandr 22 августа 2014 в 20:57

Хочу сделать для пользователей подписку на ключевые слова (теги). Например, пользователь подписывается на теги "Челси", "Арсенал", "МЮ" и видит только ноды, отмеченные этими тегами.

Для этого сделал флаг типа "Taxonomy Term" для таксономии "Теги". Дальше создаю View типа "Содержимое", устанавливаю связь "Содержимое: Термины таксономии материала", а через нее - другую связь "(термин) Флаги: <имя_флага> (текущим пользователем)".

На выходе получаю такой список нод:

1. "Арсенал уволил тренера" (тег: Арсенал)
2. "МЮ выиграл в гостях" (тег: МЮ)
3. "Челси и Арсенал сыграли вничью" (тег: Челси)
4. "Челси и Арсенал сыграли вничью" (тег: Арсенал)

Понятно, что строки №3 и №4 повторяются потому, что они выдаются на теги "Челси" и "Арсенал" соответственно. Естественно, это легко убирается с помощью уникальности (если выкинуть поле "Тег") или агрегации (если, например, агрегировать как "счетчик" по полю "Тег").

А можно ли как-то "агрегировать" названия тегов вместе, чтобы пользователь видел сразу все теги, по которым ему была выдана данная нода? Т.е., чтобы вывод выглядел так:

1. "Арсенал уволил тренера" (тег: Арсенал)
2. "МЮ выиграл в гостях" (тег: МЮ)
3. "Челси и Арсенал сыграли вничью" (тег: Челси, Арсенал)

К сожалению, среди агрегирующих функций я не нашел ничего похожего (там только счетчик, сумма, минимум/максимум и т.п.). Возможно ли такое в принципе?

Спасибо!

Комментарии