3

私の Rails アプリには、Facebook のいいね! を操作する投票機能があります。

私がサポートしている言語の動的なメタ facebook の説明 (og:title) を持つ方法です。

たとえば、私のウォールでは、イギリス人が投票/いいねボタンをクリックした場合は「私は XXX に投票しました」と書かれ、フランス人がクリックした場合は「Je viens devoter pour XXX」と書かれていることを望みます。

このドキュメントを見たことがあります: https://developers.facebook.com/docs/internationalization/しかし、実装方法がよくわかりません。

Facebookはある種のキャッシュを使用しているため、og:titleを1回解析するだけだと思っていましたが(特定の言語で)、機能を備えたWebサイトをいくつか見ました...

ありがとう

4

1 に答える 1

3

標準の fb js で js.src を変更する必要があります。

<div id="fb-root"></div>
<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 = '<%= fb_source_url(your_app_id) %>';
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

たとえば、このメソッドを application_helper.rb に追加します。

  def localte_to_uri
    I18n.locale.to_s.gsub('-','_')
  end

  def fb_source_url(app_id)
    "http://connect.facebook.net/#{localte_to_uri}/all.js#xfbml=1&appId=#{app_id}&version=v2.0"
  end

私がフランスと間違えなければ、次のようになります。

"//connect.facebook.net/fr_FR/all.js#xfbml=1"
于 2012-08-02T15:50:56.883 に答える