php - plugin - API de Facebook: ¿la mejor manera de obtener me gusta, compartir, contar comentarios para una página/publicación de grupo?
plugin like (3)
¿Cuál es la mejor manera de obtener, compartir, contar comentarios para una publicación?
Lo estoy intentando a través de FQL, pero no parece proporcionar ningún dato cuando la URL es una URL de publicación de FB:
SELECCIONE like_count, comment_count, share_count DESDE link_stat WHERE url = "https://www.facebook.com/Macklemore/posts/10153256675935268"
Cuando obtengo la información de la publicación a través del Graph API Explorer:
386050065267_10153256675935268
Me da el recuento de Me gusta y el recuento de compartir y puedo obtener el recuento de comentarios a través de 386050065267_10153256675935268/comments?summary=true
{
"id": "386050065267_10153256675935268",
"from": {
"category": "Musician/band",
"name": "Macklemore",
"id": "386050065267"
},
"message": "We’re playing a FREE show in November to celebrate the new Microsoft Store opening in Jacksonville, Florida. Come see us! Info here: http://msft.it/STJevent/n/nThursday, November 21, 2013/n10:00 p.m./nStart lining up for your chance to attend the show on Saturday./nLocation: Outdoors behind Oakley, near Dick’s Sporting Goods.",
"actions": [
{
"name": "Comment",
"link": "https://www.facebook.com/386050065267/posts/10153256675935268"
},
{
"name": "Like",
"link": "https://www.facebook.com/386050065267/posts/10153256675935268"
}
],
"privacy": {
"value": ""
},
"type": "status",
"status_type": "mobile_status_update",
"created_time": "2013-09-26T16:30:23+0000",
"updated_time": "2013-09-27T20:39:45+0000",
**"shares": {
"count": 274
},**
"likes": {
"data": [
{
"name": "Jabson Ramos",
"id": "100005418486411"
},
{
"name": "Sophia Belen Parada Andrades",
"id": "100002552653152"
},
{
"name": "Oli Barrera",
"id": "100001718791443"
},
{
"name": "Viktoria Martinez",
"id": "1697663024"
}
],
**"count": 3345**
},
"comments": {
"data": [
{
"id": "10153256675935268_43537841",
"from": {
"name": "Vu Thai",
"id": "1338690172"
},
"message": "Sean Viray Matt Win Soo... about my birthday weekend...",
"message_tags": [
{
"id": "75311036",
"name": "Sean Viray",
"type": "user",
"offset": 0,
"length": 10
},
{
"id": "25113189",
"name": "Matt Win",
"type": "user",
"offset": 11,
"length": 8
}
],
"can_remove": false,
"created_time": "2013-09-26T16:31:03+0000",
"like_count": 4,
"user_likes": false
},
.....
],
"paging": {
"cursors": {
"after": "MjY=",
"before": "MQ=="
},
"next": "https://graph.facebook.com/386050065267_10153256675935268/comments?limit=25&after=MjY="
}
}
}
Lo extraño es que cuando ejecuto esa consulta en mi aplicación no obtengo el recuento de recursos compartidos o me gusta. ¿Estoy haciendo algo mal? ¿Son los datos en el explorador diferentes de a qué aplicaciones tienen acceso?
Sé que puedo obtener el recuento como a través de 386050065267_10153256675935268 / likes? Summary = true
Lo más grande sería el recuento de acciones perdidas.
Tan resumen,
¿Puedes obtener estas estadísticas a través de FQL? Si no, ¿cómo puede obtener el recuento de recursos compartidos a través de la API gráfica?
FQL ahora está depreciado. Aquí está cómo hacerlo usando la API 2.x:
get /1000076132681/posts?limit=3&fields=object_id,likes.summary(true),comments.summary(true)
Esto da como resultado el xml, por ejemplo:
"summary": {
"total_count": 80
}
Y en caso de que también necesite la url de imagen de mayor tamaño, eche un vistazo
?fields=full_picture,attachments
Puede usar la API de gráficos de Facebook como https://graph.facebook.com/?ids=http://mycodingtricks.com
y devolverá un código json como
{
"http://mycodingtricks.com":{
"id":"http://mycodingtricks.com",
"shares":1
}
}
He desarrollado mi propio script php en el que todos pueden contar socialmente utilizando esa API. http://mycodingtricks.com/share/social.php?url=YOUR-URL-HERE y devolverá datos como:
{
"facebook":[
{
"share_count":1,
"like_count":0,
"comment_count":0,
"total_count":1,
"click_count":0,
"comments_fbid":567687199998199,
"commentsbox_count":0
}
],
"googleplus":10,
"twitter":3,
"buffer":0,
"pinterest":0,
"stumblupon":1,
"reddit":"<html><body><h1>403 Forbidden<//h1>/nRequest forbidden by administrative rules./n<//body><//html>/n",
"linkedin":0
}
Pero si desea usarlo por su cuenta, aquí hay un artículo completo sobre cómo contar las acciones de Facebook, como y todo. http://mycodingtricks.com/php/2-ways-to-count-facebook-likes-shares-and-comments-using-php/
POST_ID?fields=likes.summary(true),comments.summary(true),shares
Resultado:
{
"shares": {
"count": 272 //share count
},
"likes": {
"data": [
],
"paging": {
},
"summary": {
"total_count": 3453 //like count
}
},
"comments": {
"data": [
],
"paging": {
},
"summary": {
"total_count": 255 //comment count
}
}
}