2015-04-17 68 views
11

以前我使用的是FQL,但是從v2.1開始不推薦使用,我正在使用圖形邊緣移動到v2.3「likes 」。請求獲取v2.3中Facebook頁面喜歡的總數API

這裏是我的網址:

https://graph.facebook.com/v2.3/<page_id>/likes?access_token=<access_token>&summary=true 

這將返回詳細JSON與尋呼信息 - 但它忽略了TOTAL_COUNT這是作爲Facebook docs描述應該是在返回時「總結=真正的」使用 - 你會明白我的意思。

回答

31

任何磕磕絆絆到這個答案現在(2016年4月),將獲得沮喪,因爲公認的答案不再V2.6

?場=喜歡工作/喜歡現在返回相同的結果 - >頁面喜歡的頁面。

爲了得到粉絲數,你現在需要使用欄= fan_count

https://graph.facebook.com/pepsius/?fields=fan_count&access_token=<access_token> 

正如你可以在上面看到,你也可以直接與頁面名提出請求,無需取的pageID。

+3

正確,我已經更新這是現在正確的答案。 –

+2

我如何獲得此網址的正確訪問標記? –

+2

你是一個拯救生命的人。這在他們的文檔中沒有任何地方! – jetlej

5

您在尋找喜歡該頁面的人的總數量還是頁面喜歡的內容?

例如。

https://graph.facebook.com/v2.3/56381779049/likes?access_token=<access_token>&summary=true 

將返回Page PepsiUS喜歡什麼。

https://graph.facebook.com/v2.3/56381779049?fields=likes&access_token=<access_token> 

將返回喜歡該頁面的總人數。

{"likes": 32804486, 
"id": "56381779049"} 

了驗證這裏PepsiUS

+2

這是第二個,即?fields = likes。 –

+0

完美,有效 - 非常感謝。 –

+0

我相信不同之處在於PageID/Likes是將返回目標頁面喜歡的其他頁面的Endpoint。 PageID?fields = Likes是對頁面/用戶的邊數進行計數。 –

0

感謝@NativePaul

我花了差不多兩天找到一個解決方案,以獲得Facebook專頁計數器喜歡在數值的簡碼。所以,我已經修改了我從這個環節得到了代碼:http://www.internoetics.com/2015/07/13/display-number-facebook-page-likes-wordpress-php/

和修正其與fan_count領域工作,這是給你參考代碼:

/* 
 
\t Display the Number of Facebook Page Likes in Plain Text with WordPress Shortcode (and PHP) 
 
\t Shortcode: [fbpagelikes id="" appid="" appsecret="" cache="" n="1"] 
 
*/ 
 

 

 
function internoetics_fb_pagelikes($atts) { 
 
    extract(shortcode_atts(array(
 
    'id' => 'kenryscom', 
 
    'appid' => 'xxxxxxxxxxxxxxxx', 
 
    'appsecret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
 
    'n' => 1, 
 
    'cache' => 3600 * 24 * 1 
 
), $atts)); 
 

 
$fbcounthash = md5("$url.$cache.$appid.$appsecret.$n"); 
 
$fbcountrecord = 'fblikes_' . $fbcounthash; 
 
$cachedposts = get_transient($fbcountrecord); 
 
if ($cachedposts !== false) { 
 
return $cachedposts; 
 

 
    } else { 
 

 
    $json_url ='https://graph.facebook.com/' . $id . '?fields=fan_count&access_token=' . $appid . '|' . $appsecret; 
 
    $json = file_get_contents($json_url); 
 
    $json_output = json_decode($json); 
 
    
 
    if($json_output->fan_count) { 
 
    $fan_count = $json_output->fan_count; 
 
    if ($n) $fan_count = number_format($fan_count); 
 
    set_transient($fbcountrecord, $fan_count, $cache); 
 
    return $fan_count; 
 
    } else { 
 
    return 'Unavailable'; 
 
    } 
 
} 
 
} 
 
add_shortcode('fbpagelikes','internoetics_fb_pagelikes');

你有將上面的代碼添加到主題函數文件中,並在代碼開頭提到的任何地方使用Shortcode。

相關問題