Jump to content
  • 0

Как сделать мультиязычный сайт без PHP


blacks
 Share

Question

Всем привет.

Планирую сделать второй язык для сайта (сейчас только русский)

Хочется немного автоматизма добавить – чтоб при заходе на сайт

человеку сразу выдавалась нужная языковая страница.

Как делается данный метод не знаю. - в программирование слаб.

Пригодится любая помощь, совет, мануал.

Основные предположения и условия:

1. Сайт не динамический – простой html и местами shtml

2. Смена языка есть ридерект на несколько вариантов:

  • site.ru/en/
  • site.ru/en.html
  • en.site.ru

3. Предполагаю что определить язык посетителя можно

  • с домена с которого он пришел
  • с браузера – вроде там есть такие «отметины»
  • с куки – если посетитель уже выбрал нужный язык
  • с geo-ip

Дополнительные условия:

Пользование PHP возможно в зачатках – только для мультиязычности.

Предполагается что все должно быть на статике.

Возможно в будущем появится блог но вряд ли будут английские посты.

Хостинг виртуальный; доступа к настройкам апача нет.

Вот вроде и все… ничего не забыл…

Всем откликнувшимся заранее большое спасибо!

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Без PHP можно через javascript

var lang;
if (typeof navigator.userLanguage != 'undefined')
{lang =navigator.userLanguage.toUpperCase };}
else
if (typeof navigator.language != 'undefined')
{lang =navigator.language.toUpperCase };}

верхняя проверка для Оперы и ИЕ нижняя для ФаерФокса

if (lang=='ru') {location.href="/ru/index.html"} else {location.href="/en/index.html"}

как то так на скорую руку

Link to comment
Share on other sites

  • 0
верхняя проверка для Оперы и ИЕ нижняя для ФаерФокса

Спасибо.

Решил попробовать с простого. Но не получилось.

Пример который тестил:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<script type="text/JavaScript">
if (lang=='ru') {location.href="index-ru.html"} else {location.href="index-en.html"}
</script>

</head>

<body>
index
</body>

</html>

geo-ip наверное лучший вариант.

Извините.... :D нет ли у вас готового примера?

Link to comment
Share on other sites

  • 0

blacks, а задавать значение переменной lang кто за Вас будет?

hf3, я не знаю яваскрипт, но разве после uppercase не должно получиться 'RU'? А ещё там как-то много закрывающих скобок.

Edited by Int
Link to comment
Share on other sites

  • 0
но разве после uppercase не должно получиться 'RU'?

Уху… запарился… просто писал находу из головы…

Ща протестирую функцию и точно напишу

вот в случае если бразуер на английском языке - редиректит на другую страничку

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
<script type="text/javascript">
var lang;
if (typeof navigator.userLanguage != 'undefined')
{lang = navigator.userLanguage.toUpperCase() }
else
if (typeof navigator.language != 'undefined')
{lang = navigator.language.toUpperCase() }
alert(lang);
if (lang=='EN'){location.href="en.html"};

</script>

</head>
<body>
русский вариант
</body>
</html>

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy