http://developers.facebook.com/docs/reference/plugins/comments/

Comments Boxは、サイトへのコメント機能を提供するソーシャルプラグインです。moderationとdistributionもこのプラグインに含まれます。

Social Relevance: Comments Boxは、それぞれのユーザに対して最も精度の高いコメントを表示するために、社会的信号(social signal)を用います。コメントは、友達からのもの、友達の友達からのもの、いちばんlikeされているもの、一番議論になっているもの、という具合にユーザにとって有益と思われる順番に並びます。その一方、スパムと判定されたものは隠されます。

Distribution: コメントは、友達やFacebook上でページをlikeした人の間で簡単に共有できます。"Post to Facebook"チェックボックスがチェックされた状態でコメントを投稿すると、該当ページへのリンクと一緒に友達のニュースフィードに通知されます。

友達やページをlikeした人は、Facebook上のNews Feedで返信コメントを書いたりlikeする事によって、もしくはサイトのコメント欄から投稿する事によって会話に参加できます。それらのどこからコメントしたかに関わらず、スレッドはComments BoxとFacebook上の両方で同期された状態が保たれます。
<fb:comments width="500" num_posts="10" href="http://facebook-docs.oklahome.net/archives/51888551.html"></fb:comments>

Attributes

  • href コメントプラグインのURL。このURLに対して、FacebookのNews Feedからリンクが貼られます。
  • width プラグインの表示領域幅をピクセル指定。最小値は500pxです。
  • num_posts デフォルトで表示されるコメント数。デフォルトは10です。

Moderation tools

コメントがデフォルトで"visible to everyonee(全員に公開)"になるか"has limited
visibility(限定公開:コメントしたユーザと友達にしか見えない)"になるかを管理者は設定できるので、無効な内容を避けるのが便利になります。

また、禁止単語のブラックリストを作ったり、ユーザを制限する事が出来ます。制限されたユーザがコメントすると、そのコメントは自動的にlimited visibilityが適用されます。

管理をするには、自分自身のアカウントを管理者として設定する必要があります。プラグインのhrefパラメータに指定されているページのopen graphのmetaタグに対して、下記のようにadminを追加してください。
<meta property="fb:admins" content="{YOUR_FACEBOOK_USER_ID}"/>
複数の管理者を追加するには、ユーザIDをカンマ区切りにします。

サイト内にたくさんのコメント欄がある場合には、管理者としてFacebookアプリケーションIDを追記する事を強くお勧めします(そのアプリの管理者全員がコメント欄の管理者権限を与えられます)。すると、同じアプリケーションで管理しているコメントを一元管理するインターフェイスが使えるようになります。
<meta property="fb:app_id" content="{YOUR_APPLICATION_ID}">

FAQ

How do I access the number of comments left of my page?

fb:comments-countタグを使うと、該当URLへのコメントの数が<span>タグに囲われて表示されます。これにスタイルを適用する事でサイトに最適な見栄えを提供できます。example.comへのコメントの総数を表示するのなら、以下のように書きます。
<fb:comments-count href=http://facebook-docs.oklahome.net/archives/51888551.html></fb:comments-count> awesome comments
上記の内容は、以下のように表示されます。
awesome comments
iframeで書き出す事で、該当URLへのリンクとコメント数を表示する事も出来ます。例えば、example.comへのコメント数を書き出す例は以下の通りです。
<iframe src="http://www.facebook.com/plugins/comments.php?href=example.com&permalink=1" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:130px; height:16px;" allowTransparency="true"></iframe>
任意のURLへのコメント数は、Graph APIを使って取得する事も可能です。例えば、example.comへのコメント数は、以下の結果のcommentsフィールドを参照します。
https://graph.facebook.com/?ids=http://example.com/
{
   "http://example.com/": {
      "id": "http://example.com/",
      "shares": 48660,
      "comments": 734
   }
}

How do I know when someone comments on my site?

FB.Event.subscribeで、comment.createを監視する事でコメント投稿イベントを取得できます。

What does the grammar filter do?

  • 句読点を補完する(行末にピリオドを足すなど)
  • 余分な空白を除去する
  • 大文字小文字を自動で制御する(行始めの単語の最初の一文字を大文字にするなど)
  • スラングを補完する(plzをpleaseにするなど)
  • 句読点の後に空白を入れる(Hi,CatをHi, Catにするなど)
  • よくある文法間違いを直す(dontをdon'tに直すなど)
プラグインのsettingsでgrammer filterを無効にできます。

How do I access the comments left on my site?

FQLのlink_statテーブルからcomments_fbidを取得し、commentテーブルからcomments_fbidがそれに該当するレコードを取得します。

How do I enable users to comment using other login providers?

プラグインのsettingsで、コメント欄へのサードパーティのログインを許可できます。