Twitter sigue siendo una red social muy usada e importante, donde suceden muchas cosas, noticias al instante, memes y mucho mas, veamos como manipular twitter, publicar y listar tweets.
Hace un tiempo ya había publicado un par de artículos sobre el uso de twitter pero investigando di cuenta que la librería usada ya esta desactualizada y en este articulo les enseño una nueva librería actualizada.
Conectar a la API de Twitter
Lo primero que tenemos que hacer es ir a twitter y crear una aplicación de twitter para poder usar la API de twitter, vamos a https://apps.twitter.com/
Para crear la aplicación de Twitter tenemos que hacer click en el botón de crear App y seguir un asistente.
Una vez que terminemos el asistente nos enviara un email para confirmar y después se debe activar la aplicación, después de que se active la aplicación de twitter vamos a obtener los 4 códigos que necesitaremos para conectarnos a la API.
- Clave Publica
- Clave Secreta
- Token de Acceso
- Token de acceso secreto
Son 4 códigos alfanuméricos que debemos copiar y pegar correctamente en el espacio correspondiente a cada uno, si colocamos los datos incorrectos va a ser imposible conectar con la API de twitter.
Enviar un Tweet
Vamos a entra en materia vamos a descargar la librería https://github.com/dg/twitter-php en la sección de releases descargamos la ultima versión, en mi caso es la v3.7.
Vamos a usar los archivos que están en la carpeta “src” en nuestro proyecto le cambiamos el nombre a “twitter-php” y incluiremos el archivo twitter.class.php.
include "twitter-php/twitter.class.php"; $consumerKey = ""; $consumerSecret = ""; $accessToken = ""; $accessTokenSecret = ""; $twitter = new Twitter($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret); $twitter->send('Hola twitter :) - desde PHP');
El código es bien sencillo, básicamente creamos una instancia de la clase Twitter y pasamos como parámetros los 4 códigos de acceso de la aplicación de twitter.
Usando el metodo $twitter->send($text) podemos publicar cualquier texto.
Leer Tweets
Para leer tweets vamos a usar el método $twitter->load($tweet) que lleva como parámetros Twitter:ME, Twitter::ME_AND_FRIENDS, Twitter::REPLIES, Twitter::RETWEETS … para ver mis tweets, mis tweets y de amigos, respuestas y retweets.
include "twitter-php/twitter.class.php"; $consumerKey = ""; $consumerSecret = ; $accessToken = ""; $accessTokenSecret = ""; $twitter = new Twitter($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret); $statuses = $twitter->load(Twitter::ME); foreach ($statuses as $status) { echo "message: ", Twitter::clickable($status); echo " posted at " , $status->created_at; echo " posted by " , $status->user->name; echo "<br><br>"; }
La variable $statuses contiene un array con los 20 últimos resultados. Es necesario usar un ciclo foreach para recorrer los resultados.
La variable $status dentro del ciclo contiene los datos de cada tweet, $status->text contiene el texto del estado o tweet. Se usa la funcion Twitter::clickable($status) para convertir menciones y enlaces en enlaces html.
El resultado es el siguiente:
Buscar Tweets
Para buscar tweets tenemos la función $twitter->load($text) donde $text puede ser cualquier cadena de texto, hashtags con # y menciones con @
include "twitter-php/twitter.class.php"; $consumerKey = ""; $consumerSecret = ; $accessToken = ""; $accessTokenSecret = ""; $twitter = new Twitter($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret); $statuses = $twitter->search("@microsoft"); foreach ($statuses as $status) { echo "message: ", Twitter::clickable($status); echo " posted at " , $status->created_at; echo " posted by " , $status->user->name; echo "<br><br>"; }
Los resultados se guardan en la variable $statuses que se comporta de la misma manera que el ejemplo anterior.
Descargar
A continuación les dejo un enlace de descarga para descargar la librería twitter-php v3.7 y 3 archivos de ejemplo.
Link: https://drive.google.com/file/d/19h8qV_k1WuDt3i_kqNTM4_65qlZkxJZE/view
Conclusión
La librería twitter-php es fácil de usar y esta en continuo desarrollo.
Que tal les ha parecido este articulo?
Saludos