Фан-страницы Facebook и связанные с ними открытые графические объекты - PullRequest
2 голосов
/ 27 сентября 2011

Если существует фан-страница в Facebook, как это:

https://www.facebook.com/HuffingtonPost 

Я полагаю, что счетчик вызовов вызывает API графа:

https://graph.facebook.com/https://www.facebook.com/HuffingtonPost

Фактически я получаю:

{
    "id": "https://www.facebook.com/HuffingtonPost",
    "shares": 435839
}

С другой стороны, если я позвоню

https://graph.facebook.com/HuffingtonPost

, я получу более подробный вывод:

{
   "id": "18468761129",
   "name": "The Huffington Post",
   "picture": "http://profile.ak.fbcdn.net/hprofile-ak-ash2/188072_18468761129_6398033_s.jpg",
   "link": "http://www.facebook.com/HuffingtonPost",
   "likes": 435832,
   "category": "Website",
   "website": "http://www.facebook.com/HuffingtonPost",
   "username": "HuffingtonPost",
   "company_overview": "The Internet Newspaper\nNews | Blogs | Video | Community",
   "description": "The Huffington Post - The Internet Newspaper. - Company Overview: The Internet Newspaper News | Blogs | Video | Community | Facebook",

       [... omissis ...]

}

Кто-нибудь может мне сказать, в чем разница между этими двумя объектами opengraph?Существует также небольшая разница между количеством акций и лайков.Зачем?

Обновление:

В последние дни graph api возвращал также тип объекта, поэтому я понял, что:

  • Первый вызов API возвращает link_statТип объекта.
  • Второй вызов API возвращает объект типа страницы.

В первом случае количество акций должно представлять собой сумму:

  • количество лайковэтот URL
  • количество акций этого URL (включая копирование / вставку ссылки обратно в Facebook)
  • количество лайков и комментариев к историям на Facebook об этом URL
  • количество входящих сообщений, содержащих этот URL-адрес в виде вложения.

Во втором случае подобный счет представляет собой только себя

Может кто-нибудь подтвердить, что я правильно подсчитал в акциях?

Ответы [ 2 ]

2 голосов
/ 13 октября 2011

Для разбивки между лайками, публикациями и комментариями (которые складываются и используются в качестве числа "лайков" на кнопке лайков, лучше использовать FQL.

Если вы используете OG, что-то вроде http://graph.facebook.com/http://example.com покажет вам:

{
   "id": "http://example.com",
   "shares": 3
}

... как вы отметили выше. Если вы используете FQL, вы можете получить разбивку каждого из них.

<code><?php

// require the php sdk
require_once 'facebook-php-sdk/src/facebook.php';

// Create our Application instance.
$facebook = new Facebook(array(
  'appId' => 'YOUR_APP_ID',
  'secret' => 'YOUR_APP_SECRET',
  'cookie' => true,
));

$external_result = $facebook->api(array(
'method' => 'fql.query',
'query' => 'SELECT share_count, like_count, comment_count, total_count, click_count FROM link_stat WHERE url="http://example.com";'
));

echo '<li>'.number_format($external_result[0]['like_count']).' likes, '.number_format($external_result[0]['share_count']).' shares';

echo '<pre>';
print_r($external_result);
echo '
'; ?>

На экране отобразится что-то вроде:

* 1 likes, 2 shares
Array
(
    [0] => Array
        (
            [share_count] => 2
            [like_count] => 1
            [comment_count] => 0
            [total_count] => 3
            [click_count] => 0
        )

)

Кроме того, у SA теперь есть специальный сайт для Facebook, который может быть вам полезен. :) facebook.stackoverflow.com

2 голосов
/ 27 сентября 2011

Первый - это то, что говорит вам, сколько лайков у выбранного URL. Используя второй, вы получите информацию об объекте страницы через идентификатор страницы

...