特定のページに個別商品の「いいね」ボタンを設置したい。これを行う方法はありますか?ページ自体に「いいね」ボタンしか設置できませんでした。サンプル 1 ページに 3 つの商品があります。ユーザーが好きな製品を特定できるようにするには、このページに 3 つの「いいね」ボタンが必要です。
質問する
412 次
1 に答える
0
Open Graph (プロトコル) は基本的に、各オブジェクト (= 製品) が独自の URL と Web ページを持っていることを前提としています。そうすれば簡単です。各製品ページで正しい og:title、og:url、og:image などを設定するだけです。
http://yourdomain.com/product-A
http://yourdomain.com/product-B
http://yourdomain.com/product-C
製品概要ページhttp://yourdomain.com/productsには、3 つのいいねボタンがあります。
<div class="fb-like" data-href="http://yourdomain.com/product-A"/>
<div class="fb-like" data-href="http://yourdomain.com/product-B"/>
<div class="fb-like" data-href="http://yourdomain.com/product-C"/>
終わり!
何らかの理由で個別の製品ページがない場合は、Facebook クローラー用に個別の URL に「ダミー」ページをセットアップする必要があります。次に、ユーザー エージェントによってクローラーを検出し、適切な OG メタタグのセットを配信します (ページには with タグ以外を含める必要はありません)。通常のユーザーは、製品概要ページにリダイレクトする必要があります。これを行う必要があるPHPコードを次に示します。
<?php
if (!(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]),"facebookexternalhit") === false)) {
// Its Facebook crawler, give him what he needs!
echo '<html><head>';
echo '<meta property="og:title" content="Product A">';
echo '<meta property="og:url" content="http://yourdomain.com/product-A">';
echo '</head></html>';
} else {
// normal user, lets redirect
header("Location: http://yourdomain.com/products");
}
?>
于 2013-01-23T22:46:02.027 に答える