Download the PHP package jvdlaar/laravel-content-translation without Composer
On this page you can find all versions of the php package jvdlaar/laravel-content-translation. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download jvdlaar/laravel-content-translation
More information about jvdlaar/laravel-content-translation
Files in jvdlaar/laravel-content-translation
Package laravel-content-translation
Short Description A Laravel 5 package to translate properties of a model.
License MIT
Homepage https://github.com/jvdlaar/laravel-content-translation
Informations about the package laravel-content-translation
Laravel content translation
This package makes properties of your models translatable. For example when you have a Country model then you can make the country name translatable.
Todo
- Add user interface to add translations.
- Add tests
- Method to disable the "static translations".
Installation
This package can be installed through Composer.
You must install this service provider.
This package also comes with a facade, which provides an easy way to call the the class.
You can publish the config file of this package with this command:
The following config file will be published in config/content-translation.php
The array key is they key with which the translations are stored in the database, "class" refers to the model class. "label_property" is used to determine the translatable label of this model. E.g. the country name in the country model. "properties" is an array with the translatable properties and whether they are required and their output needs to be nl2br.
Usage
After installation and configuration you need to make models translatable by implementing the TranslatableContract. The HasTranslatables trait helps with this.
Example model
In above example $country->name and $country->nationality are translated. When there is no translation in the database the admin_name property is used as fallback. The 2nd parameter of the function displayTranslation says that there is a default that should be used. The 3rd parameter is the locale of the translation, by default the current app locale will be used. 4th parameter determines that a fallback language should be used, this fallback language is set in the config.
Eager load translations for multiple models.
In above example 3 countries are eager loaded. So loading the model later and requesting a translation doesn't need an additional query.
Saving translations
You can add a translation to the database by using the facade:
Or by using a method on the model:
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
About ezCompany
ezCompany is a webdevelopment agency in the Netherlands located in Tilburg, Breda and Utrecht. For more information see our website.
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-content-translation with dependencies
illuminate/database Version ~5.2.0|~5.3.0|~5.4.0
illuminate/support Version ~5.2.0|~5.3.0|~5.4.0
mcamara/laravel-localization Version ^1.0