Как построить двуязычный сайт
Двуязычный сайт может отображаться на выбранном языке или автоматически на языке браузера. Второй вариант позволяет легко обращаться к посетителю, но домашняя страница будет иметь меньший PageRank.
Вместе с тем следует понимать, что с точки зрения ссылок желательно иметь разные точки входа для каждого языка.
Показывать сайт на языке браузера с помощью PHP
Этот код был протестирован с основными браузерами: Crome, Firefox, Opera, Safari.
Файл сохранен под именем index.php
В примере страница на французском языке имеет имя файла index-fr.php и страницу на английском index-en.php
Можно добавить сколько угодно языков, следуя одному и тому же принципу...
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"</head>
<?php
$lang = "en";
$serv = $_SERVER[HTTP_ACCEPT_LANGUAGE];
if($serv != false)
{
$temp = explode(",",$serv);
$temp = strtolower(substr($temp[0]),0,2);
if($temp == "fr") $lang="fr";
}
?>
<iframe
<?php
echo "src=\"index-$lang.php\"";
?>
border=0 frameborder="no" RESIZE scrolling="YES" noresize >
</iframe>
<noframes>
<body>
Frames requises.
</body>
</noframes>
</html>
Если установить языки в подкаталоги, например, fr, en и т. Д., Мы будем писать без кадров:
<?php
$lang="en";
$serv = $_SERVER[HTTP_ACCEPT_LANGUAGE];
if($serv != false)
{
$temp = explode(",",$serv);
$temp = strtolower(substr($temp[0],0,2));
if($temp == "fr") $lang="fr";
}
header("HTTP/1.1 302 Redirect");
header("location:https://www.iqlevsha.ru/$lang/");
?>
Имена страниц
Домашняя страница на определённом языке не обязательно носит индексное имя, ей можно дать значимое имя как конкептион.php для французской страницы и design.php для английской страницы, и это хорошо для ссылки.
В этом случае в коде будут изменены следующие строки, заменив слова примера на ключевые слова, выбранные в зависимости от темы сайта:
$lang = "design";
if($temp == "fr") $lang="conception";
echo "src=\"$lang.php\"";
При ссылке на сайт ты будешь давать адреса: https://www.iqlevsha.ru/conception.php или https://www.iqlevsha.ru/design.php (замени iqlevsha.ru доменным именем своего сайта и замени имена страниц).
Условное перенаправление приветствия
Чтобы избежать потери PR, одним из решений является размещение страницы определенного языка в качестве домашней страницы сайта, например, домашняя страница на французском языке будет называться index.php, и она будет содержать PHP-код, перенаправляющий посетителей с других языков.
Недостатком, если эта страница важна, что часто бывает с домашней страницей, является загрузка двух страниц при входе на сайт, для посетителей других языков.
Код перенаправления в зависимости от языка браузера доступен в zip-файле.
Перенаправление по IP
Некоторые сервисы, в том числе и у самой Google, идентифицируют происхождение пользователя с его IP-адреса и автоматически перенаправляют его (и не оставляя ему выбора) на сайт, соответствующий его языку. Для установки такой системы, очевидно, потребуется возможность определить происхождение пользователя, и для этого ответы можно найти в статье Как узнать страну IP-адреса.
Двуязычный сайт и поисковые системы
Для выбора из одного из предыдущих процессов он является определяющим: как сайт будет виден алгоритмами поисковых систем .
Код автоматического перенаправления по браузеру не оказывает негативного влияния на PageRank страниц, отличных от домашней, в отличие от решений, использующих функцию PHP «header», на которой останавливаются роботы поисковых систем.
Это не идеальное решение, теряешь пиар-точку на домашней странице, проблема кажется присущей двуязычному сайту, все решения имеют недостатки.
Лучше всего для английского и французского сайта, например, с точки зрения поисковых систем:
- Либо создать сайт в .com, а другой - в .fr
- Либо создать дочерние области в и в.
- Создать подкаталоги как в, так и в.
На самом деле эти три решения подходят для разных случаев.
Под-области
В данном случае наименее актуальным будет использование подтем. Действительно, они воспринимаются поисковиками как разные сайты, отсюда и разделение PageRank. Лучше сайт побольше двух небольших.
На самом деле субдомены должны использоваться только для нескольких пользователей, каждый из которых имеет доступ к собственному веб-пространству.
Страновые области
Использовать разные домены с одним и тем же недостатком, но с преимуществом расширения по отношению к языку и более четким URL для аудитории.
Относительное расширение языка, например .fr, дает преимущество при позиционировании, над локальным поиском.
Под-каталоги
Однако наличие более крупного участка может перевесить преимущества геолокации.
Если трафик на сайте недостаточно велик, чтобы оправдать несколько доменных имен, то лучше всего использовать подкаталоги. Использование скрипта для адаптации языка под пользователя, по моему опыту, эффективно с указанными в статье мерами предосторожности.