私のページには、ユーザーが開いて探索できる複数のコンテンツ ブロックがあります。これらのブロック内には、各ブロックに関連する Like ボタンがあります。各 Like ボタン ウィジェットには、コンテンツのブロックが開かれたときに動的に生成される URL があります。
$('.socialMedia').append("<div class='fb-like' data-href='"+likeUrl+"' data-send='true' data-width='250' data-show-faces='false' data-colorscheme='dark'></div>");
Like URL は、 http: //url.com/like-shY76739jj.phpの形式のアドレスです。このような URL にアクセスすると、.htaccess マジックを介してクエリ文字列 URL にリダイレクトされます。ただし、これはおそらく私の問題とは無関係です...
問題は、Javascript によって生成された動的 URL が Facebook に送信されないことです。ソースコードで正しく生成され (Like Button 要素を検査すると、正しい URL がウィジェットの href 属性にあることが示されます)、Like ボタンポップアップウィンドウに正しく表示されます (ボタンがクリックされた直後、ユーザーが追加のメッセージを入力することを選択します)、しかし、Facebook でストーリーを確認すると、URL が正しくありません。具体的には、次のように返されます。
http://url.com/like-.php - likeURL 変数に入れている動的 ID が、ページから Facebook ストーリーに変換されません。理由がわかりません。
私はFB.XFBML.parse(document.getElementById('socialMedia'));
すでにコードを使用していますが、これは問題を解決していません。
TL:DR Facebook のようなボタンで使用される動的 URL は、ウィジェット内では正しく表示されますが、生成された Facebook ストーリーでは表示されません。
助けてくれてありがとう!