2013-01-23 21 views
0

我想爲特定頁面上的單個產品安裝「Like」按鈕。他們的方式是做到這一點?我只能安裝頁面本身的'LIKE'按鈕。示例我在頁面上有3個產品。我需要3個'Like'按鈕才能讓用戶明確他們喜歡哪些產品。如何爲單個產品安裝「Like」按鈕

+0

請在搜索問題前搜索StackOverflow。 這個問題已經被問了很多,並已被回答。看到[Facebook上像按鈕上的帖子工作不正常](http://stackoverflow.com/questions/14301433/facebook-like-button-on-posts-not-working-properly/) –

回答

0

Open Graph(Protocol)基本上假設每個對象(=產品)都有自己的URL &網頁。這種方式很簡單,您只需在每個產品頁面上設置正確的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 you'ld然後只是有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元標記(頁面不必比包含更多的標籤)。普通用戶應該重定向到產品概覽頁面。這裏有一些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"); 
} 
?> 
相關問題