zelenin / yii2-i18n-module
Yii2 i18n (internalization) module makes the translation of your application so simple
Installs: 54 026
Dependents: 9
Suggesters: 0
Security: 0
Stars: 83
Watchers: 14
Forks: 42
Open Issues: 5
Type:yii2-extension
Requires
README
Yii2 i18n (internalization) module makes the translation of your application so simple
Installation
Composer
The preferred way to install this extension is through Composer.
Either run
php composer.phar require zelenin/yii2-i18n-module "dev-master"
or add
"zelenin/yii2-i18n-module": "dev-master"
to the require section of your composer.json
Usage
Configure I18N component in common config:
'i18n' => [ 'class' => Zelenin\yii\modules\I18n\components\I18N::className(), 'languages' => ['ru-RU', 'de-DE', 'it-IT'] ],
Configure I18N component in backend config:
'modules' => [ 'i18n' => Zelenin\yii\modules\I18n\Module::className() ],
Run:
php yii migrate --migrationPath=@Zelenin/yii/modules/I18n/migrations
Go to http://backend.yourdomain.com/translations
for translating your messages
PHP to DB import
If you have an old project with PHP-based i18n you may migrate to DbSource via console.
Run:
php yii i18n/import @common/messages
where @common/messages
is path for app translations
DB to PHP export
Run:
php yii i18n/export @Zelenin/yii/modules/I18n/messages zelenin/modules/i18n
where @Zelenin/yii/modules/I18n/messages
is path for app translations and zelenin/modules/i18n
is translations category in DB
Using yii
category with DB
Import translations from PHP files
php yii i18n/import @yii/messages
Configure I18N component:
'i18n' => [ 'class'=> Zelenin\yii\modules\I18n\components\I18N::className(), 'languages' => ['ru-RU', 'de-DE', 'it-IT'], 'translations' => [ 'yii' => [ 'class' => yii\i18n\DbMessageSource::className() ] ] ],
Info
Component uses yii\i18n\MissingTranslationEvent for auto-add of missing translations to database
See Yii2 i18n guide
Author
Aleksandr Zelenin, e-mail: aleksandr@zelenin.me