mikehins/language-switcher

Create a language switcher for your Laravel 5.5 app, straight from the command line

dev-master 2020-03-05 04:05 UTC

This package is auto-updated.

Last update: 2024-09-05 14:09:50 UTC


README

Latest Stable Version Total Downloads

Laravel 7 ready

language-switcher

Create a language switcher for your Laravel 5.5+ app straight from the command line

composer require mikehins/language-switcher

This command will add / remove a language switcher menu item in the main nav bar.

Alt text

Important Laravel version 6 +

Be sure to run composer require laravel/ui and php artisan ui vue --auth before to run the command. You also have to run npm install && npm run dev

Important before Laravel version 6.0

Be sure to run php artisan make:auth and php artisan migrate before to run the command

To add the language switcher

php artisan switch:add

To revert the changes

php artisan switch:delete

This is what the command switch:add does :

  • Add a default_language field in your users table
  • Add the markup to the layouts/app.blade.php file
  • Add a route in the routes/web.php file
  • Add a Middleware inside app\Http\Middleware
  • Add the middleware to the app\Http\Kernel.php
  • Add a LanguageController in the app\Http\Controllers directory
  • Add a language file to the config directory config/languages.php

When the user switch the language, it will automatically update the default_language field from the users table. The next time the user logs in, the language session will automatically be set by the middleware using the auth()->user()->default_language variable.