Entity reference и мультиязычный сайт.

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

Аватар пользователя Владимир SV Владимир SV 16 мая 2015 в 9:25

Имеется 2 типа материала, "Мастер" и "Работа". Документы "Работа" связаны с документом "Мастер" посредством Entity reference. На странице "Мастер" в блоке вьюсом выводится список ссылающихся на мастера нод "Работа". Т.е. реализовано решение, ставшее для таких задач, можно сказать классическим.
Сайт мультиязычный (3 языка). Чтобы не плодить ноды, перевод реализован с помощью Entity tanslation, т.е. все варианты перевода хранятся в одной ноде.
Теперь суть проблемы...
В контекстном фильтре, в качестве значения по умолчанию установлено "Content ID from URL". Но поскольку все варианты перевода находятся в ноде с одним ID, то в случае если документ не имеет перевода, вьюсом выводится одна ссылка на исходный языковый вариант. Если документ переведен, то выводится 3 ссылки на документ (по числу языков), но ссылки одинаковые, на один и тот же исходный языковый вариант.
Включением уникальности проблема решается наполовину, остается одна ссылка, но при переключении языков она не изменяется.
Требуется сделать вывод ссылки, соответствующей текущему значению языка, однако не соображу куда копать. Может в выводимом поле через Rewrite results формировать необходимую ссылку, вытянув значение текущего языка из $language ? И еще хотелось бы избавиться от включения уникальности в фильтре, так как ссылающихся документов может быть до сотни, да и документов "Мастер" будет не меньше, а это очевидно отразится на быстродействии.