0

開発者レベルでFacebookを扱ったことがないので、私はここで明らかに間違ったことをしていると確信しています。とにかく、ここに問題があります:

https://developers.facebook.com/docs/reference/plugins/like/からいいねボタンコードを生成し、それを自分のページにコピーします。サイトを表示しようとすると、何も表示されません。

スクリプトセクションのURLにプロトコルが含まれていないことに気付きました(「//connect.facebook.net/en_US/all.js#appId=207642302633270&xfbml=1」で表示されます)。Firebugを使用して何が起こっているかを見るとscript、ヘッドセクションにタグが挿入されていることがわかりますが、URLが機能しません。プロトコルとして「https:」を含めるように変更してみましたが、スクリプトが読み込まれ、ヘッドセクションに一連のCSSが挿入されていることがわかります。

しかし、それでもサイトには何も表示されません。

問題になる可能性があると私が考えることができる唯一のことは、私(またはより具体的には私のクライアント)がFacebookの会社のプロファイルを持っていないことです-必要に応じてFacebookの会社のプロファイルを設定するように依頼できますが、これはそうではありません彼らはビジネスのためにFacebookのプロフィールを維持したくないので、好ましいオプションです。

これが私が扱っている簡略化されたサンプルです:

<html>
    <head>
        <title>Testing the Like Button</title>
        <meta property="og:title" content="Company FB Test" />
        <meta property="og:type" content="company" />
        <meta property="og:url" content="http://www.domain.com/fb-test.html" />
        <meta property="og:image" content="http://www.domain.com/logo.png" />
        <meta property="og:site_name" content="Site Name" />
        <meta property="fb:admins" content="__MY_FB_ID__" />
    </head>
    <body>
        <script>(function(d){
            var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
            js = d.createElement('script'); js.id = id; js.async = true;
            js.src = "https://connect.facebook.net/en_US/all.js#appId=207642302633270&xfbml=1";
            d.getElementsByTagName('head')[0].appendChild(js);
        }(document));</script>
        <div class="fb-like" data-send="false" data-layout="box_count" data-width="67" data-show-faces="false" data-font="arial"></div>
    </body>
</html>

いくつかのメモ:

  1. サンプルにはプロトコル「https:」が含まれています-前述のように、私もなしで試しました。
  2. これは、Chrome 13、Firefox 6、およびIE9の最新バージョンでテストされています。
  3. Facebook Lintでこれをテストしましたが、エラーは発生しません。

私に明白なことを指摘することに成功した人、そして友好的なアドバイスでチャイムを鳴らしてくれた人に事前に感謝します。

乾杯、ザック

4

1 に答える 1

1

このコードをページのどこかに追加する必要があります。

<div id="fb-root"></div>

Chromeデバッガーツールで、そのdivが見つからないというエラーがあることがわかります。

于 2011-09-09T22:10:00.340 に答える