Я обычно делаю многоязычность так — создаю в инфоблоке набор свойств для языков (Название с кодом RU_TITLE, Title с кодом EN_TITLE и так далее). А свойства вроде детальной картинки и дат активности остаются общими для всех языков. В шаблоне с помощью хелпера вывожу нужное свойство:
| Код |
|---|
<?=$arResult['PROPERTIES'][ $hLang->getPropLang() . 'TITLE' ]['VALUE']?> |
В админке данные для разных круто языков разносятся по вкладкам, общие данные также на отдельной вкладке.
Важно передать в $arParams компоненту идентификатор языка, чтобы кэширование правильно работало. Правильнее было бы переписать компоненты, чтобы отдавали сразу свойства нужного языка, но руки пока не доходили.