Кнопки входа в Facebook не перерисовываются на нескольких языках

Мы используем английский язык и иврит для нашего веб-сайта. На английском языке кнопки подключения к Facebook отображаются правильно, но на иврите впервые кнопка FLogin появляется на английском языке, а не на иврите, и все языковые стандарты установлены правильно. Расположение кнопок также неправильно отформатировано на сайте на иврите. Пожалуйста, помогите мне в этом.

Спасибо!

Чтобы изменить кнопки FB на нужный язык, я сделал следующие настройки:

Я использую XFBML и загружаю SDK JavaScript в соответствующей локали для вашего сайта. Например, если наш сайт на испанском языке, сошлитесь на этот скрипт: //connect.facebook.net/es_LA/all.js

Для иврита: //connect.facebook.net/he_IL/all.js

Все локали указаны здесь https://www.facebook.com/translations/FacebookLocales.xml Вы можете проверить свой язык

Я использовал код подключения fb таким же образом: но все же FB API дает нам неправильные результаты в некоторых сценариях. Ниже приведен код, который я использовал:

<?php if ($facebookInvite) {  
   $lang = &JFactory::getLanguage();
   $currentLang =  $lang->get('tag'); // Now $currentlang has the locale of the   language selected
?>

// Now I pass $currentlang to "connect.facebook.net/locale_of_current_lang/all.js"    Please see below

<script src="http://connect.facebook.net/<?php echo $currentLang; ?>/all.js" type="text/javascript"></script>
<script type="text/javascript">
joms.jQuery(document).ready(function(){
function init(){
    FB.init({appId: '<?php echo $config->get('fbconnectkey');?>', status: false, cookie: true, xfbml: true});

}

if(window.FB) {
    init();
} else {
    window.fbAsyncInit = init;
}

});

</script>


<fb:login-button  onlogin="joms.connect.update();" scope="read_stream,publish_stream,offline_access,email,user_birthday,status_update,user_status"><?php echo JText::_('COM_COMMUNITY_SIGN_IN_WITH_FACEBOOK');?></fb:login-button>

person Bhupinder Singh    schedule 18.10.2012    source источник
comment
У нас та же проблема, по какой-то причине, если вы являетесь APP за пределами Facebook, локали, отличные от английского, не работают должным образом (и всегда отображаются на английском языке). Что я заметил, так это то, что если я изменю свой язык внутри Facebook (все меню сайта Facebook будут на иврите), то кнопка входа в систему также будет правильно написана на иврите. Но я не мог заставить его работать с моим собственным кодом.   -  person Alon Adler    schedule 18.10.2012


Ответы (1)


Если пользователь вошел в систему Facebook, подключаемый модуль входа всегда будет отображаться на языке настроенной локали пользователя (не сайта). Вот почему он меняется, когда вы переключаете язык пользователя на иврит.

Если пользователь не вошел в систему, подключаемый модуль входа будет использовать языковой стандарт загруженного js-sdk:

http://connect.facebook.net/LOCALE/all.js
person Donn Lee    schedule 18.10.2012