@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 урл с разным содержимым, кроме того для перенаправления на локализованные версии сайта
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы