1

Facebookの「いいね」ボタンを壁に投稿しようとしていますが、できません。Facebookサイトから提供されたコードをコピーして貼り付けた理由がわかりません。インスペクターのネットワークパネルを確認すると、Facebookに200OKの接続が確立されていることがわかります。Facebookのウォールにアクセスすると、その投稿が表示されません。他のサイトの物を好きにしようとすると、すぐに壁に貼られてしまいます。

<div class="fb-like services" data-href="http://www.my-url.com/" data-send="false" data-show-faces="false" data-layout="button_count"></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 = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

<meta property="og:title" content="My Site" />
<meta property="og:type" content="game" />
<meta property="og:url" content="http://www.my-url.com" />
<meta property="og:image" content="" />
<meta property="og:site_name" content="My Site" />
<meta property="fb:admins" content="100002412494318" />
4

1 に答える 1

1

OP へのコメントで述べたように、類似プラグインで問題を引き起こしている可能性がある 2 つの問題があります。

最初og:metaに、いいねボタンを配置したい URL にいくつかのタグを実装するように注意する必要があります。これらのメタ タグは、ユーザーのウォール/タイムラインに投稿されるストーリーで使用するタイトル、説明、および画像を Facebook が決定するのに役立ちます。

2 番目に気を付けなければならないことは、Facebook のクローラーが URL にアクセスできる必要があるということです。そうしないと、Facebook はあなたの URL を指すフィード ストーリーを作成できません。コメントで述べたように、デバッグしている URL はローカル マシン上にあるため、Facebook のサーバーはアクセスできません。Facebook は、アクセスできない URL にいいね! ストーリーを投稿しません (それで何の意味があるのでしょうか?)。

「いいね!」ボタンが正しく機能していることを確認するには、Facebook のサーバーが URL にアクセスできるようになるまで待つ必要があります。サイトを「実際の」ライブ サーバーにアップロードした場合でも、この URL へのアクセスをパスワードと IP 制限で制限することができます。このような場合、Facebook のサーバーの IP アドレスをホワイトリストに含めるか、他の方法 (おそらくユーザー エージェントを調べる) を使用して、Facebook が URL とそのog:metaタグにアクセスできるようにすることができます。

Facebook は、この種の問題をデバッグするための優れたツールを提供してくれました。このツールは、適切にFacebook デバッガーと名付けられています。提供された URL を調べ、取得したデータを一覧表示し、Facebook があなたのサイトをどのように認識しているかを正確に表示します。また、欠落しているデータについて警告し、これらの問題を修正するための手順を提案します。

于 2013-02-19T21:06:17.500 に答える