13

Facebookの共有ボタンを雇用主のサイトに統合しようとしています。タイトル、URL、説明/イントロがすべて正しく表示されていますが、画像が添付されていません。共有ダイアログが開くと、Facebookが画像を処理しようとしているように、画像コンテナがちらつき、その後消えますが、失敗します。

og:imageとリンクリレーションを使用して、共有リンクに使用する画像を指定しようとしています。

<meta property="og:image" content="/images/logo_white_150px.png" />
<link rel="image_src" type="image/png" href="/images/logo_white_150px.png" />

その画像は以前は機能していましたが(適切に拡大縮小されました)、現在は機能していません。サイズと形式が異なる他の画像も試してみましたが、うまくいきませんでした。

ヘッダーで使用しているオープンメタタグは次のとおりです。

<!DOCTYPE html>
<html xmlns:fb="http://ogp.me/ns/fb#" itemscope itemtype="http://schema.org/Article" xmlns:og="http://ogp.me/ns#">
  <head>    
    <meta property="og:type" content="landing page" />
    <meta property="og:title" content="Social Media Test Page" />
    <meta property="og:description" content="This is a page for testing the behavior of social media buttons..." />
    <meta property="og:image" content="/images/logo_white_150px.png" />
    <link rel="image_src" type="image/png" href="/images/logo_white_150px.png" />
    <meta property="og:image:type" content="image/png" />
    <meta property="og:url" content="<%=shortUrl%>" />
    <meta property="og:site_name" content="site name" />
    <meta property="og:medium" content="mult" />
  </head>

本文の冒頭で使用しているJavaScriptは次のとおりです。

  <body>
    <script type="text/javascript">
      (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>
  ...

そして、これが私がボタンをどのように使用しているかです:

  <div class="left" style="text-align: center;">
    <a name="fb_share" type="button" share_url="<%=shortUrl%>">Share</a>
    <script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
  </div>


事前にクリスに感謝します。

4

3 に答える 3

1

スクレイピング結果に問題がなければ、 Facebook Debuggerを使用して新しいスクラップ情報を取得してみてください。

これは、Facebook が og:data に独自のキャッシュを使用しているためです。

于 2016-01-06T14:34:17.240 に答える
0

コードからの HTML 出力が表示されないため、問題について推測することしかできませんでした。のような相対 URL は使用しないでください<%=shortUrl%>。ただし、必ず完全修飾 URL を使用してください。

また、http://developers.facebook.com/docs/share/は、この共有ボタンが非推奨であると述べています。代わりに [いいね] ボタンを使用するように切り替えてください: http://developers.facebook.com/docs/reference/plugins/like/

于 2012-01-11T05:08:46.847 に答える