Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 26.05.2016 14:44:48

Александр

Локализация через посредника

Здравствуйте. Написал посредника, который устанавливает язык локализации

    public function handle($request, Closure $next)
    {
        App::setLocale(Session::get('language'));
        return $next($request);
    }

в файле Kernel.php вписал
   

protected $middleware = [
        \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
        \App\Http\Middleware\LanguageMiddleware::class,
    ];

если в самом посреднике ставлю какое нибудь echo "message" и комментирую return то выводит message, т.е. запрос проходит через него, но язык не устанавливается, почему такое может быть?

#2 11.11.2016 21:29:24

PhalconBoy

Re: Локализация через посредника

Попробуй Cookie.lang. Будет работать

#3 01.12.2016 19:43:42

Re: Локализация через посредника

Добрый день!
Тоже изначально сделал через Cookie.
А про SEO совсем забыл.
И теперь надо переделывать и включать в URL локаль.
Чтобы google "понимал" какой язык индексирует.
Я так понял, если в URL не указывать локаль страницы, то google проиндексирует 3 языка, а в индекс к себе возьмет 1 на выбор и вперемешку. И в заголовках страницы указывать язык особого смыла нет.

<html lang="ru">

Надо обязательно
mydomain.com/ru/index.php
mydomain.com/en/index.php

Сейчас начал все это переделывать и пока остановился, т.к. при "подставлении" префикса в URL у меня естественно все CSS слетают.
Я конечно могу сделать так:

<link rel="stylesheet" href="{{ config('app.url') }}/css/main.css">

Но теперь я сам себя в угол загоняю - везде править и писать такую конструкцию... Не айс...

Что подскажите?
Как реализовать получше?
Может как то фильтрами в маршрутах можно сделать? Про них я еще не читал и что такое не знаю.
Или ну ее эту SEO и оставить как есть в cookie?

Не в сети

Подвал раздела