Как получить количество лайков c Facebook Graph API v2

Facebook запустил Graph API v2.0, а 30 апреля 2015 года прекратил поддержку версии v1.0. Мне понадобилось вытянуть количество лайков для страницы. Делюсь способом как это можно сделать.

Вам понадобится OAuth2 access token для получения данной информации. Как его получить читайте документацию.


$facebookPageId = 'pageNameOrId';
$accessToken = 'OAuthAccessToken';
/**
 * You may also add another fields to get (link, name, website and other)
 * @see https://developers.facebook.com/docs/graph-api/reference/page
 */
$fields = implode(',', array('likes'));
$url = "https://graph.facebook.com/v2.4/{$facebookPageId}?fields={$fields}&access_token={$accessToken}";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($curl);
curl_close($curl);
$details = json_decode($result);
echo $details->likes;

Application Access Token

Если Вы будете делать запрос от имени приложения, то можно получить данные, сделав всего один запрос к Graph API.
Дело в том, что Facebook Graph API v2 позволяет в качестве access token использовать пару appId и appSecret, разделив их |.
В таком случае url будет выглядеть следующим образом:


/**
 * @see https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens
 */
$url = "https://graph.facebook.com/v2.4/{$facebookPageId}?fields={$fields}&access_token={$appId}|{$appSecret}";

Stas Kuryan

Web developer. Перфекционист в написании кода.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *