Translate Dnamic Data into multiple languages
udiptaweb/laravel-multilang is a Laravel package for translate dnamic data into multiple languages.
It currently has 0 GitHub stars and 4 downloads on Packagist (latest version v1.0.0).
Install it with composer require udiptaweb/laravel-multilang.
Discover more Laravel packages by udiptaweb
or browse all Laravel packages to compare alternatives.
Last updated
Installation
Steps:
composer require udiptaweb/laravel-multilang
php artisan vendor:publish
Then select provider Udiptaweb\LaravelMultilang\LaravelMultilangServiceProvider
This will publish config file named as
laravel-multilang.php
and a migration file named as
2022_01_03_102303_create_translations_table.php
Usage:
use Udiptaweb\LaravelMultilang\Traits\hasTranslation;
protected $translable_cols = ['name'];
Write the methods inside boot method on the model as below
protected static function boot()
{
parent::boot();
static::created(function($model){
$model->createTranslation();
});
static::updated(function($model){
$model->updateTranslation();
});
static::deleted(function($model){
$model->deleteTranslation();
});
}
4.Install google translate laravel package and set GOOGLE_TRANSLATE_API_KEY
Now to translate use the method as shown below
$user = User::find($id)
$user->getTranslated('field_name','language')
e.g. If you want to translate the field name of user to Hindi, then
$user->getTranslated('name','hi')
Available Languages :
Avalilable languages are specied on published config file laravel-multilang.php as languages = ['en','hi']
Deafult language : You can change default language by specifying it on default_language filed on laravel-multilang.php
***You should use language code specified on languages array on laravel-multilang.php