Ни для кого не секрет, что большинство сайтов делают мультиязычность для каталогов с помощью дополнительных свойств. Это удобно, так как элемент (с его ценой, картинкой, сортировкой) добавляется один раз, а языкозависимые параметры задаются через дополнительные свойства:
PROPERTY_EN_NAME
PROPERTY_EN_DETAIL_TEXT
...
и тд.
Идея в том, чтобы в стандартных компонентах
bitrix:catalog.element
bitrix:catalog.section
bitrix:catalog.section.list
bitrix:catalog.top
bitrix:news.list
bitrix:news.detail
реализовать поддержку мультиязычности, и в зависимости от константы LANGUAGE_ID и языка по умолчанию, выбирать в $arResult те или иные свойства элемента в качестве основных.
А так же добавить поддержку выборки нужных свойств перевода на уровне API инфоблоков.
Но должен быть штатный механизм языковости.
Вышеописанное можно и в result_modifier сделать.
Это должно быть на уровне ядра, а не на уровне костылей. Это ШТАТНЫЙ функционал, который ДОЛЖЕН быть в современном продукте. Чтобы "из коробки" любой человек мог сделать себе мультиязычный сайт на Битриксе.
информацию инфоблоков на примере новостей держим в разных инфоблоков для каждой версии сайта.
для каталога товаров дублируем свойства под разные языки.
проблем не вижу.
И не надо про SEO - это совсем другое.
А реализация мультиязычности на уровне API это слишком огромная задача и она кстати могла быть реализована при переходе к D7, но увы.
Ждали 5 лет. Еще подождем.
Может в D8?