2

ウェブサイトには英語とヘブライ語を使用しています。英語ではFacebookの接続ボタンは正しくレンダリングされますが、ヘブライ語では初めてFLoginボタンが英語で表示され、ヘブライ語ではなく、すべてのロケールが正しく設定されています。ヘブライ語のサイトでは、ボタンの位置も正しくフォーマットされていません。これについて私を助けてください。

ありがとう!

FBボタンを必要な言語に変更するには、次の設定を行いました。

XFBMLを使用しており、サイトに適したロケールでJavaScriptSDKをロードしています。たとえば、サイトがスペイン語の場合は、次のスクリプトを参照してください://connect.facebook.net/es_LA/all.js

ヘブライ語の場合://connect.facebook.net/he_IL/all.js

すべてのロケールはここで提供されますhttps://www.facebook.com/translations/FacebookLocales.xml ロケールを確認できます

私はfb接続コードで同じように使用しましたが、それでもFBAPIはいくつかのシナリオで間違った結果を提供しています。以下は私が使用したコードです:

<?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>
4

1 に答える 1

0

ユーザーが Facebook にログインしている場合、ログイン プラグインは常にユーザーの (サイトではなく) 設定されたロケールの言語で表示されます。そのため、ユーザーのロケールをヘブライ語に切り替えると変更されます。

ユーザーがログインしていない場合、ログイン プラグインは読み込まれた js-sdk のロケールを使用します。

http://connect.facebook.net/LOCALE/all.js
于 2012-10-18T18:46:26.183 に答える