многоезичен уебсайт, използващ $_SESSION

Моят уебсайт има два езика: френски и английски. Решението, което избрах, работи, но ми създава проблеми. Използвам сесия, за да поддържам "чист" URL адрес, който е еднакъв на английски и във Франция.

Моето решение:

За да избера езика, намирам потребителя чрез IP и ако не е във Франция, настройвам

 $_SESSION['language'] = "ENG"

В противен случай,

 $_SESSION['language'] = "FRA"

След това включвам моя файл words.php, който съдържа целия текст по следния начин:

if( $_SESSION['language'] == "ENG")
{
   $word1 = "hello"
   $word2 = ....
}
else
{
   $word1 = "bonjour"
   $word2 = ....
}

Най-накрая на моя уебсайт имам няколко echo $word1;.

За да променя езика, имам две връзки (по една за всеки език) към уеб страница language.php с параметър get, който просто променя променливата на сесията и пренасочва към уеб страницата:

if($_GET['l']=="1")
{
    $_SESSION['language'] = "FRA";

    header('Location: ' . htmlspecialchars($_SERVER['HTTP_REFERER']));
}
elseif($_GET['l']=="2")
{
    $_SESSION['language'] = "ENG";
    header('Location: ' . htmlspecialchars($_SERVER['HTTP_REFERER']));
}

Моят проблем: Основният ми проблем е, че Google индексира уебсайта ми само на английски (предполагам, че IP адресът на робота не е във Франция?). В google.fr и google.com уебсайтът ми е на английски. Какво мога да направя, за да индексира уебсайта и на двата езика?


person Mansur Khan    schedule 24.10.2013    source източник
comment
Сигурен съм, че освен ако нямате параметър за търсене или разнообразен URL адрес, тогава Google ще индексира само сайта, който ще се покаже на неговите ботове. ако погледнете големите сайтове, те са склонни да избират abc.com/en/category/ и abc.com/fr/category   -  person Liam Sorsby    schedule 24.10.2013


Отговори (1)


Трябва да използвате допълнителни папки за езици. Можете да използвате example.com/fr за френско съдържание и example.com/en за английско съдържание.

Можете да кажете, че този уебсайт е многоезичен и многорегионален за ботовете на Google. Редактирайте този html код за вашата цел.

<link rel=”alternate” href=”http://example.com/en-gb” hreflang=”en-gb” />
<link rel=”alternate” href=”http://example.com/en-us” hreflang=”en-us” />
<link rel=”alternate” href=”http://example.com/en-au” hreflang=”en-au” />
<link rel=”alternate” href=”http://example.com/” hreflang=”x-default” />
person Burak Bayır    schedule 13.02.2014