Facebookの共有ボタンを作成する私の方法は次のとおり です。1。share.phpを作成します(Facebookはこの偽のWebサイトでメタデータをキャプチャし、共有したい実際のWebサイトにリダイレクトします)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="https://www.facebook.com/2008/fbml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $_GET['title'];?></title>
<meta property="og:url" content="<?php echo $_GET['url'];?>" />
<meta property="og:title" content="<?php echo $_GET['title'];?>" />
<meta property="og:description" content="<?php echo $_GET['title'];?> "/>
<?
if (isset($_GET['leftImg']) && $_GET['leftImg'] != 'undefined') {
echo '<meta property="og:image" content="'.$_GET['leftImg'].'"/>';
}
if (isset($_GET['rightImg']) && $_GET['rightImg'] != 'undefined') {
echo '<meta property="og:image" content="'.$_GET['rightImg'].'"/>';
}
?>
</head>
<body>
<script>
window.location.href = "<?php echo $_GET['redirect'];?>";
</script>
</body>
</html>
2.share.phpで必要なデータはメインページから渡されます
window.open('http://www.facebook.com/sharer.php?u=' + encodeURIComponent('http://' + window.location.hostname + '/share.php?url=http://yahoo.com&title=test&redirect=..&leftImg=......&' ),'sharer','toolbar=0,status=0,width=826px,height=536');
問題は、og:urlはどうあるべきかということです。2つのリンクがあります:share.phpと私が共有したい実際のウェブサイト、
share.php?title = ...&description = ..を使用する場合でも、特定のURLを指定 する必要がありますが、それは奇妙です。share.php?url = share.php?url = share.phpになり、最終的には引き続き共有するための正しいURLを参照できません
私が実際のウェブサイトを使用する場合、私の考えはすべてのメタがshare.phpにあるため、メタデータを収集できません。
問題を解決する方法は?ありがとう
!!!!!!!!!!!!!!! 2013年11月4日に更新:!!!!!!!!!!!!!!
私は根本的な問題を理解しました、それは画像の異なるソースによって引き起こされます:
eg. http://www.tekxon.com.pk/sites/all/themes/bluemasters/images/gallery/3.jpg
この画像は、Facebookによって共有ページで期待どおりにキャプチャされ、問題なく機能しています。
eg. http://54.251.107.161/source/test2/2012/05/07/0/3/A/Content/15/Pg015.png
ただし、サーバーでホストされているこの画像は、初めて共有ページに表示されるのではなく、ページをリロードしたときにのみ表示されます。*共有ページには表示されていませんが、Facebookホームページの共有コンテンツに画像が表示されて存在しています。
なぜそれが起こるのですか、それはファイアウォールのいくつかの誤った設定が原因ですか?ありがとう