如何获得各种Facebook帖子类型的总票数,分享和评论数量?

时间:2012-11-15 14:13:19

标签: facebook-graph-api facebook-fql facebook-php-sdk

我正在创建一个简单的CMS系统,用户可以在Facebook上提供由品牌页面制作的鼓舞人心的帖子。用户所要做的就是粘贴到帖子的固定链接,CMS将处理对Graph API的ping操作,以获取所需的所有信息。 (例如https://www.facebook.com/photo.php?fbid=10152047553868306&set=a.99394368305.88399.40796308305&type=1&relevant_count=1

CMS的一个要求是每个帖子都包含likecommentshare计数。这是我挣扎的地方。

只需使用带照片的ID ping图形端点,就只会返回喜欢/评论的分页列表。总喜欢或总评论没有参数。幸运的是,photo表包含like_infocomment_info成员供我查询。这对于获取照片总数非常有用:

SELECT like_info, comment_info FROM photo WHERE object_id = 10152047553868306

我希望我可以在SELECTstatus表格中应用相同的FQL video,以获取likecomment信息对于状态更新和视频帖子,但你不能。 like_infocomment_info仅驻留在photo表格上。

至少现在我可以对照片进行评论/评论总数,但我仍然没有看到如何获得照片的共享总数。

我是否有办法可靠地获取视频帖子,照片帖子和状态帖子的likecommentshare次?使用Graph或FQL API的任意组合?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

我在facebook graph api v2.8

中找到了类似的东西
$accessToken ="XXXXXXXXXX";

$fb = new Facebook\Facebook(array(
        'app_id' => 'Facbook App Id',
        'app_secret' =>  'Facebook Secret Key',
        'default_graph_version' => 'v2.8',
)); 

$params = array();

$request = $fb->request('GET', '/{post_id}/?fields=likes.limit(0).summary(true),comments.limit(0).summary(true)',$params,$accessToken);

$response = $fb->getClient()->sendRequest($request);

$graphNode = $response->getGraphNode();
$likeArr = $graphNode['likes']->getMetaData();
$commentArr = $graphNode['comments']->getMetaData();

echo "Total Post Likes : ".$likeArr['summary']['total_count'];
echo "Total Post Comments : ".$commentArr['summary']['total_count'];

答案 1 :(得分:0)

使用它:

SELECT user_id FROM like WHERE object_id=10151751324059927 LIMIT 1000