Kirill
Я правильно понял, что надо оставить текущий урл, но добавить параметр для языка?
Vladimir
ну я просто себе фичу поставил которая к урлу ещё добавляет язык, поэтому при переключении языка оно язык то переключает но страница после нажатия уходит в глубокий 404
👻
ну если костыльно то берешь текущий и меняешь на ru на en к римеру
Vladimir
Ну а потом нормально работает
Vladimir
Я код выше скинул, там в примере такая муть немного
Kirill
был урл index/test/ok?param=1, после Url::current(['lang' => 'ru']) стал index/test/ok?param=1&lang=ru
Vladimir
Dmitriy
Url::curren()
?
👻
а нафига урл знать
👻
контроллер и влюху ты и так знаешь
текущий слаг в моделе есть
Vladimir
Vladimir
Он вообще в виде виджета
Vladimir
В блоке справа висит
👻
Yii::$app->controller->route;
$this->context->route;
Dmitriy
а задача то какая ?
Niko
ну ok
Повесь на него урл site/lang и редиректь на урл, с которого пришел запрос
И ставь его куда угодно
Vladimir
Niko
это почему?
Vladimir
а не, может и получиться
Niko
посмотри как индус сделал и переведи на нормальный лад
https://www.youtube.com/watch?v=_qNMcJKoEK0&index=51&list=PLRd0zhQj3CBmusDbBzFgg3H20VxLx2mkF
Vladimir
да у меня все сделано, просто с переключением проблема
Vladimir
я не хочу переделывать
Vladimir
https://github.com/codemix/yii2-localeurls
Vladimir
вот эту хрень юзаю
Good
Может кто знает
В доках написано, что можно удалять GET параметры, если присвоить им в URL::current() null. Например, я делаю так:
$this->url = Url::current(['per-page' => null, 'page' => null, 'sort' => null], true);
В результате УРЛ должен получится
http://domain.com/category/elektronika
а получается
http://domain.com/category/elektronika?page=&per-page=&sort=
ЧЯДНТ?
Good
Собственно нужно для канонических урлов в метатегах
Good
То есть? А якык тут при чем?
Vladimir
Когда я допустим переключился с дефолт языка на другой, оно подставляет site.ru/en/блаблабла, а когда я хочу ещё раз его переключить, то он берет этот урл и добавляет перед en например ещё ru
Good
Не, с этим норм
Vladimir
?
Good
Зависит от реализации мультиязычных урлов
Good
А у меня нет параметры не хотят убиратся
Good
Гет
Vladimir
чел, мы с тобой тут оба за помощью)
Vladimir
и оба с урлменеджерами
Vladimir
почитай выше
Vladimir
и у него не добавляет к урл язк
PowerAxis
https://m.habrahabr.ru/post/226931/
PowerAxis
Я по этому примеру делал
PowerAxis
Там и логика и виджет описаны
PowerAxis
Посмотри, авось зайдет
Vladimir
Гугл чуток не довел меня до этой статьи :)
Vladimir
http://atoumus.github.io/yii2-i18n.html
Делал по этой
Vladimir
Спасибо, попробую по той что ты дал, мне она нравится больше, все описано и подробно
Vladimir
А он умеет определять язык из настроек браузера?
Vladimir
А то чет не вижу
PowerAxis
Кажется да я не помню точно
PowerAxis
А Может и нет ... Но в любом случае поставить один if где-то в сервисе не должно составить труда
Good
Я использую это расширение
https://github.com/codemix/yii2-localeurls
Методом проб и ошибок при таком конфиге работает:
'urlManager' => [
'class' => 'codemix\localeurls\UrlManager',
'languages' => array_flip(require(__DIR__ . '/languages.php')),
'enableLanguagePersistence' => false,
'enableLanguageDetection' => false,
'enablePrettyUrl' => true,
'showScriptName' => false,
'baseUrl' => '/',
'normalizer' => [
'class' => 'yii\web\UrlNormalizer',
'action' => yii\web\UrlNormalizer::ACTION_REDIRECT_TEMPORARY,
],
'rules' => require(__DIR__ . '/routs.php'),
],
Good
Не помню уже почему, но автодетект локали подглючивал, а может и нет ,пробовать нужно
Good
Vladimir
Я использую это расширение
https://github.com/codemix/yii2-localeurls
Методом проб и ошибок при таком конфиге работает:
'urlManager' => [
'class' => 'codemix\localeurls\UrlManager',
'languages' => array_flip(require(__DIR__ . '/languages.php')),
'enableLanguagePersistence' => false,
'enableLanguageDetection' => false,
'enablePrettyUrl' => true,
'showScriptName' => false,
'baseUrl' => '/',
'normalizer' => [
'class' => 'yii\web\UrlNormalizer',
'action' => yii\web\UrlNormalizer::ACTION_REDIRECT_TEMPORARY,
],
'rules' => require(__DIR__ . '/routs.php'),
],
Вот я тоже его
Good
Попробуй конфиг, как у меня
Good
Должно норм работать
Vladimir
Как у тебя выглядит переключатель языка?
Vladimir
Ссылка
Good
Ща
Good
Да, там джаваскриптом переключается, не помню уже, почему
Good
Но суть та же
Vladimir
Воооооооооооот
Vladimir
Это то, что было нужно
Vladimir
Большое тебе спасибо )
Vladimir
Все работает
Vladimir
Люблю этот чат
Good
Не за что)
Good
Мне бы еще кто помог)
Alex
а че у тебя?)
Good
а че у тебя?)
Может кто знает
В доках написано, что можно удалять GET параметры, если присвоить им в URL::current() null. Например, я делаю так:
$this->url = Url::current(['per-page' => null, 'page' => null, 'sort' => null], true);
В результате УРЛ должен получится
http://domain.com/category/elektronika
а получается
http://domain.com/category/elektronika?page=&per-page=&sort=
ЧЯДНТ?
Alex
хмм
Alex
дай мне минут 5
Alex
гляну сорцы
Good
Я вот сейчас тоже глядеть буду
Alex
реально странно
Alex
реально фигня какая-то
Alex
я првоерил сорцы
Alex
долдно убивать