2011-05-29 52 views
1

我有一個Facebook應用程序,它對用戶是否喜歡或不同於特定頁面感興趣。我想提供一個不同於頁面的鏈接,因爲據我所知,沒有辦法使用Graph API以編程方式不同。如何爲Facebook頁面呈現不同鏈接

Facebook提供了一個類似的按鈕,但(就我所知,再次)沒有不同於按鈕。我怎樣才能提供一個選項,不像網頁不說「點擊這裏進入頁面,向下滾動到小鏈接,然後點擊它」?

+0

下面的答案似乎不起作用。還有其他建議嗎? – 2011-10-29 09:11:51

回答

2

可以發出一個DELETE請求到PAGE_ID 假設頁面id爲123456789地方作爲一個頁面上的鏈接:

<a href="unlike.php?d=1234567890123">Unlike</a> 

現在收集GET參數在unlike.php文件通過圖表api發出DELETE請求:

<?php 
$fb = new Facebook(array(
    'appId' => FB_APP_ID, 
    'secret' => FB_APP_SECRET, 
    'cookie' => true 
)); 

$session = $fb->getSession(); 

if (empty($session)) 
{ 
    $loginUrl = $fb->getLoginUrl(); 
    echo "<script>window.top.location='{$loginUrl}';</script>"; 
    exit; 
} 

$fb_liked_page = $_GET['d']; //COLLECT THE PAGE ID HERE 

try 
{ 
    $status = $fb->api("/{$fb_liked_page}/likes", 'DELETE'); 

    if ($status) 
    { 
     echo "Success, Unliked!"; 
    } 
    else 
    { 
     echo "Could not unlike this page."; 
    } 
} 
catch (Exception $e) 
{ 
    var_dump($e); 
} 
+0

謝謝,會嘗試。是否可以使用類似的方法添加喜歡? – 2011-05-29 19:49:23

+0

你確定這可以嗎?我得到「應用程序必須在白名單」,並http://www.insidefacebook.com/2010/10/08/causes-whitelisted-like-pages-2/建議原因是唯一的應用程序允許做這種事情。 – 2011-05-29 20:22:11

+0

怪胎哎呀,忘了通知你。 – 2011-05-30 06:45:15

相關問題