tanmuhittin / laravel-google-translate
Translate translation files to other languages using google translate api
Fund package maintenance!
Patreon
Installs: 1 524 506
Dependents: 11
Suggesters: 5
Security: 0
Stars: 411
Watchers: 11
Forks: 64
Open Issues: 17
Requires
- php: >=7.1.0
- ext-json: *
- google/cloud-translate: ^1.7.4
- illuminate/console: >=5.1
- illuminate/support: ^5.5|^6|^7|^8|^9|^10|^11
- illuminate/translation: ^5.5|^6|^7|^8|^9|^10|^11
- stichoza/google-translate-php: ^5.0.1
- yandex/translate-api: ^1.5.2
Requires (Dev)
- orchestra/testbench: 5.x-dev|6.x-dev|9.x-dev
- phpunit/phpunit: ^10.5
README
- Translate translation files (under /resources/lang) or lang.json files
- Provide extra facade functions Str::apiTranslate and Str::apiTranslateWithAttributes
by using stichoza/google-translate-php or Google Translate API https://cloud.google.com/translate/ or Yandex Translatin API https://tech.yandex.com/translate/
Str facade api-translation helpers
This package provides two translation methods for Laravel helper Str
Illuminate\Support\Str::apiTranslate
-> Translates texts using your selected api in configIlluminate\Support\Str::apiTranslateWithAttributes
-> Again translates texts using your selected api in config in addition to that this function respects Laravel translation text attributes like :name
how to use your own translation api
- Create your own translation api class by implementing Tanmuhittin\LaravelGoogleTranslate\Contracts\ApiTranslatorContract
- Write your classname in config laravel_google_translate.custom_api_translator . Example : Myclass::class
- Write your custom apikey for your custom class in laravel_google_translate.custom_api_translator_key
Now all translations will use your custom api.
installation
composer require tanmuhittin/laravel-google-translate php artisan vendor:publish --provider="Tanmuhittin\LaravelGoogleTranslate\LaravelGoogleTranslateServiceProvider"
If you would like to use stichoza/google-translate-php you do not need an API key. If you would like to use Google Translate API, edit config/laravel_google_translate.php and add your Google Translate API key.
php artisan config:cache
Then you can run
php artisan translate:files
See it on action:
potential issues
SSL certificate problem: unable to get local issuer certificate
https://stackoverflow.com/a/31830614
suggested packages
This package can be used with https://github.com/andrey-helldar/laravel-lang-publisher.
- Add base Laravel translation files using https://github.com/andrey-helldar/laravel-lang-publisher
- Translate your custom files using this package
Done
finally
Thank you for using laravel-google-translate :)