@semki096

Зачем в мультиязычном сайте в адресной строке указывают язык, если его можно брать из сессии?

Зачем к примеру toster.ru/ru/node указывать язык в адресной строке, если можно брать язык клиента из сессии?

Вот что я пока делаю. Определяю язык по браузеру клиента
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);

Далее сверяю, есть ли в моей модели данный язык, если есть записываю его в сессию.
$_SESSION['lang'] = $lang;
Если нет - ставлю дефолтный.

Вопрос - могу ли я обойтись без языка в адресной строке, и может ли это быть чревато и чем? Буду благодарен за советы.
  • Вопрос задан
  • 191 просмотр
Решения вопроса 4
@antimind
Как минимум чтобы можно было перейдя по ссылке попасть на нужный язык.
Ответ написан
Комментировать
SilenceOfWinter
@SilenceOfWinter
та еще зажигалка...
seo
Ответ написан
Комментировать
Kozack
@Kozack
Thinking about a11y
Ну, как минимум, чтобы:
  1. Разграничивать сайт структурно
  2. Пользователь мог относительно легко изменить язык
  3. Вам было проще реализовать переключатель (Простая ссылка против обновления данных в сесиии)
Ответ написан
Комментировать
ThunderCat
@ThunderCat Куратор тега Веб-разработка
{PHP, MySql, HTML, JS, CSS} developer
для поисковых систем, дабы не путать контент по 1 урл с разным содержимым, кроме того для перенаправления на локализованные версии сайта
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽