Я сохраняю идентификатор «locale» для каждой записи контента (например, продукт 1, локаль 1; product 1, локаль 2 и т. Д.)
Локаль связана с языком (английский, французский, японский ...) и регионом (США, Канада, Япония ...)
Таким образом, вы можете хранить «американский-английский» и «американский-испанский» отдельно, скажем, от испанского в Мексике.
Локализация обычно не только на основе языка, но и на основе контента. Например, некоторые продукты могут быть недоступны в некоторых странах.
На стороне управления контентом я обычно устанавливаю языковой стандарт с помощью файла cookie (то есть пользователь может выбрать «изменить языковой стандарт», изменить языковой стандарт и затем продолжить редактирование / создание контента). Причина, по которой я это делаю, заключается в том, что, кроме загрузки контента, у вас, как правило, нет одного и того же человека, который вводит контент, на нескольких языках (и те, кому это нужно, должны переключаться вручную, или они могут запутаться: Я снова работаю? ")
Это всего лишь несколько быстрых указателей - прокомментируйте, и я добавлю предложения, основанные на том, что я делал в прошлом (как для личных сайтов, так и для таких компаний, как Blockbuster и Avery Dennison) ...