Задать вопрос
phpneguru
@phpneguru

Как сделать так, чтобы скрипт выполнялся только один раз на php?

Всем привет, возникла вот такая задача:
есть 2 поддомена(английский и португальский) и 1 основной домен. На основном домене сайт на русском. Нашел вот такой отрезок кода, который перенаправляет пользователя у которого в настройках выставлен русский язык - с португальского сайта на русский.
Но вот когда я захожу на pt.mysite.ru(португальская версия) - всегда происходит редирект на русскую версию. Как сделать так - чтобы редирект работал только один раз. А то вдруг пользователь захочет открыть сайт на португальском, но его бесконечно будет перекидывать на русский. Как сделать так, чтобы скрипт выполнялся только один раз. После второго захода на сайт - страница чтобы не перекидывала на другой домен.
Все 3 сайта на вордпресс, сайты настроены без связки сетей(мультисайта).
$lc = ""; 
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
    $lc = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
}
if($lc == "pt"){
    exit();
} else if($lc == "en"){
	header("Location: https://en.mysite.ru");
    exit();
}
else{ // don't forget the default case if $lc is empty
	header("Location: https://mysite.ru/");
    exit();
}
  • Вопрос задан
  • 146 просмотров
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ответы на вопрос 2
sslion
@sslion
может печеньки использовать?
Ответ написан
SagePtr
@SagePtr
Еда - это святое
А можно не редиректить автоматом, а при несоответствии языка просто выводить сверху или снизу плашку "Имеется версия сайта на вашем языке [перейти]". В итоге хочет юзер - переходит на локализованную версию сайта, не хочет - не переходит.
Да и так будет лучше поисковикам, они не будут случайно нарываться на автоматические редиректы, если вдруг при запросе будут указывать Accept-Language.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы