Как правильно организовать мультиязычность в Yii2?
В нашем велосипеде мы используем алиасы, чтобы во первых не писать что то типа:\Yii::t('app', 'Разлюбезная моя Елизавета Петровна! С этим письмом прилагаю свою любовь бла бла');
// instead use alias
\Yii::t('app', 'suhov_mail');
и для каждого языка свой файл. Включая основной.
Расскажу как работает на одном из наших проектов. Есть несколько языковых файлов из пункта 2, в шаблонах все прописано как в пункте 3, изначально по заголовкам определяется язык, если в списке поддерживаемых языков пользовательского нет, показываем языковую версию по умолчанию. Если нужно изменить тексты - просто правим языковые файлы из пункта 2 в нужных местах.