Сохранение языка пользователя на сайте - PullRequest
1 голос
/ 17 августа 2011

У меня есть несколько языков на моем веб-сайте, и я хотел бы знать, какой способ сохранения выбранного пользователем языка при просмотре моего веб-сайта является наилучшим.

Я подумал о добавлении файлов cookie и проверке, существует ли язык.и если да, покажите его, в противном случае покажите значение по умолчанию.

Мой другой, хотя и использовал сеансы, но это не продлится долго, так как сеансы истекают слишком рано.

Есть ли у вас лучший подход?Спасибо.

Ответы [ 4 ]

1 голос
/ 17 августа 2011

Я бы предложил добавить суффикс или префикс в строки вашей страницы, которые php может извлечь, и установить язык как необходимый (например, www.somewhere.com/en/pagename), чтобы вы могли разрешить создание закладок / публикаций и т. Д. это также должно помочь SEO.

- Изменить, чтобы добавить код:

вот пример кода для .htaccess:

# rewrite all requests for language-specific files
RewriteEngine on
Options +FollowSymlinks
RewriteRule ^en/(.*)$ $1?lang=en [NC,L]
RewriteRule ^de/(.*)$ $1?lang=de [NC,L]
RewriteRule ^fr/(.*)$ $1?lang=fr [NC,L]
1 голос
/ 17 августа 2011

Куки - это хороший способ, если у вас нет аутентификации в вашем приложении.

0 голосов
/ 17 августа 2011

Если вы хотите зарегистрировать свой сайт в поисковых системах, вы должны сделать свои ссылки доступными. Когда роботы посещают вашу страницу, они не могут сохранять файлы cookie или переменные сеанса, поэтому они не могут получить доступ к страницам других языков.

Но если вы этого не сделаете, вы можете использовать куки , чтобы сохранить их выбор.

http://tr.php.net/manual/en/function.setcookie.php

0 голосов
/ 17 августа 2011

Я бы определенно пошел с куки-файлами - сеансы заканчиваются, как только вы закрываете браузер, и, таким образом, они не подходят.

Использование IP-адреса может привести к очень плохим результатам из-за динамических адресов и еще много чего.

Лучше всего было бы привязать язык к учетной записи пользователя в базе данных, но это, конечно, не сработает, если на вашем сайте нет учетных записей для пользователей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...