¿Cómo crear aplicaciones multilenguaje en Laravel?

Dotar a tu aplicación con la posibilidad de tener más de un lenguaje le da una ventaja competitiva: el poder ser usada en diversos países, entonces comprenderás el impulso que puede representar. ¿cómo hacemos un aplicación multilenguaje en Laravel?

Traducir mensajes estáticos de aplicación

Existen 2 caminos comunes para lograr dicho propósito, el primero es guardar los textos en la base de datos y el segundo es crear archivos json con una llave y valor, en este tutorial haremos uso de la segunda opción.

Los mensajes de traducción se crean en un json dentro de la ruta /resources/lang y deben ser nombrados con el código del lenguaje que debe aplicar, por ejemplo “es.json” para traducciones en español.
Traducir aplicaciones Laravel

Para que este archivo funcione debe ser invocado de forma correcta en nuestras vistas,debemos usar la siguiente nomenclatura en algo llamado “llaves de traducción” o dentro de la directiva @lang() de Blade .

<h1>{{ __(‘Contact’) }}</h1>

<h1>@lang(‘Contact’)</h1>

Este nombre será buscado dentro de nuestro archivo “es.json” en caso de no ser encontrado, imprime Contact.

Laravel ya incluye por defecto algunos mensajes en inglés que podrían interesarte tener en español, sólo deberás copiar el contenido del siguiente link a tu archivo es.json, es recomendable que todas las llaves de tu archivo json sean en inglés.

 

¿Cómo Laravel decide que lenguaje usar en la aplicación?

Laravel de forma por defecto ejecutará el lenguaje definido en locale dentro del path config/app, pero es posible cambiarlo de forma dinámica con App::setLocale(‘es’)

 

Traducir mensajes de error de aplicación

Laravel incluye por defecto algunos mensajes que podemos encontrar en la ruta  resources/lang/en para ser concretos son 4 archivos: auth.php, pagination.php, passwords.php, validation.php, si has modificado tu lenguaje dentro de config/app en la carpeta locale, deberás crear una carpeta con el nombre del lenguaje para español “es” y sustituir el contenido de los 4 archivos previamente mencionados, aquí podrás descargar esas traducciones,

Traducir mensaje laravel