Мне нужно получить facebook нравится, делиться, комментарии рассчитывать из статьи
Есть ли способ получить счет facebook (любит, делиться, комментарии) .
Заранее спасибо.
На самом деле вы можете получить более подробный отчет, используя FQL. Попробуйте выполнить следующий запрос:
Здесь php-код:
$fql = "SELECT url, normalized_url, share_count, like_count, comment_count, "; $fql .= "total_count, commentsbox_count, comments_fbid, click_count FROM "; $fql .= "link_stat WHERE url = 'www.apple.com'"; $apifql="https://api.facebook.com/method/fql.query?format=json&query=".urlencode($fql); $json=file_get_contents($apifql); print_r( json_decode($json));
И это ожидаемый результат:
Array ( [0] => stdClass Object ( [url] => www.apple.com [normalized_url] => http://www.apple.com/ [share_count] => 355693 [like_count] => 500374 [comment_count] => 290890 [total_count] => 1146957 [commentsbox_count] => 2 [comments_fbid] => 388265801869 [click_count] => 16558 ) )
Это решение работало для меня:
<?php $source_url = "http://www.flightpodcast.com/episode-6-john-bartels-qantas-qf30"; $url = "http://api.facebook.com/restserver.php?method=links.getStats&urls=".urlencode($source_url); $xml = file_get_contents($url); $xml = simplexml_load_string($xml); echo "Share --- ".$shares = $xml->link_stat->share_count; echo "<br/>"; echo "Like --- ".$likes = $xml->link_stat->like_count; echo "<br/>"; echo "Comments ---".$comments = $xml->link_stat->comment_count; echo "<br/>"; echo "Total --- ".$total = $xml->link_stat->total_count; echo "<br/>"; echo $max = max($shares,$likes,$comments);
result = mysql_query($query); while($row = mysql_fetch_array($result)) { $photoid = $row['photoid']; $likes = $facebook->api("/$photoid/likes"); echo "<br><br>".$row['photoid']; echo "<br />"; foreach ($likes['data'] as $like) { $likeid = $like['id']; $name = $like['name']; echo "<br>like : ".$like['id']." , ".$like['name']; $query = sprintf("INSERT INTO photo_like VALUES (%s,%s,'%s')",$user_id,$likeid,$name); echo "<br>query string : ".$query."<br><br>"; $result = mysql_query($query); if (!$result) { $message = 'Invalid query: ' . mysql_error() . "\n"; $message .= 'Whole query: ' . $query; echo "<br>"; }
Использование Graph API в качестве FQL устарело, 101 .. вы видите в URL-адресе идентификатор статьи
https://developers.facebook.com/tools/explorer