2014-09-14 2 views
0

Сейчас текущий код:Возможно ли совпадение с языком на языке facebook с языком посетителя?

<script> 
    (function(d, s, id) { 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) return; 
     js = d.createElement(s); js.id = id; 
     js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 

Он будет отображать кнопку, как на английском языке, как указано в en_US.

У меня есть веб-сайт с несколькими языками, и мне было интересно, смогут ли люди, посещающие разные страны, выбрать язык, похожий на кнопку, соответствующий их. Есть ли способ отключить язык?

EDIT: @luschn

if (window.navigator.language == "pt") {  
    var userLanguage = 'PT_pt'; 
} 
else { 
    var userLanguage = 'en_US'; 
} 
(function(d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) return; 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/" + userLanguage + "/sdk.js#xfbml=1"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 
+1

Нет, вы не можете «отключить» язык. Но если вы знаете язык своего посетителя, вы можете инициализировать SDK с соответствующей локалью. – CBroe

+0

Я предполагаю, что вы говорите о том, что @luschn ответил ниже? – coldpumpkin

ответ

0

Пользователь язык клиента при инициализации SDK:

https://developer.mozilla.org/en-US/docs/Web/API/NavigatorLanguage.language

Осторожны, это немного по-другому. Например, «en-US» вместо «en_US». И кажется, что это может быть просто «en». Убедитесь, что у вас есть резерв на всякий случай.

Я хотел бы получить код языка, сопоставьте его с массивом всех различных языков и поставить правильный (или запасной вариант) в переменном:

<script> 
    var userLanguage = 'en_US'; 

    //TODO: check client language and match with an array of your languages 
    //do nothing if there is no match (use default from above) 

    (function(d, s, id) { 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) return; 
     js = d.createElement(s); js.id = id; 
     js.src = "//connect.facebook.net/" + userLanguage + "/all.js#xfbml=1&appId=[your-app-id]&version=v2.0"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 

Вот ссылка для получения дополнительной информации о локализация: https://developers.facebook.com/docs/internationalization

Смежные вопросы