Mostrar último Tweet con php
Estoy preparando mi tarjeta virtual donde poner cosas sobre mí y así tener todos mis datos en un mismo sitio web.
Para ello he creado una sección Social, donde pongo enlaces a mi perfil de las diferentes redes sociales (Twitter, Facebook, Google Reader, Flickr) y como solo tengo esas cuatro me sobraba espacio y decidí poner un elemento más.
El elemento que decidí colocar ha sido el último Tweet (puede que ponga 3 o 5, aún no lo he decidido) para lo que he utilizado el siguiente mini script en php:
< ?php $username='Balfer'; $format='xml'; $tweet=simplexml_load_file("http://api.twitter.com/1/statuses/user_timeline/{$username}.{$format}"); echo $tweet->status[0]->text; ?> |
Con eso, colocándolo donde quereis que aparezca, tendréis el último tweet.
PS: Acordaos de cambiar el «user» del script o mostrareis mi último tweet.
ACTUALIZACIÓN: 14 de Marzo de 2012
Aquí dejo una función php que funciona bastante bien:
function get_tweets($usuario,$tweets) { $feed = "http://search.twitter.com/search.atom?q=from:" . $usuario . "&rpp=" . $tweets; $xml = simplexml_load_file($feed); $boleano = 0; foreach($xml->children() as $child) { foreach ($child as $value) { if($value->getName() == "content") { $content = $value . ""; echo "<p class='twit".$boleano."'>".$content."</p>"; } } if($boleano == 0){ $boleano = 1; } else if($boleano ==1){ $boleano = 0; } } } |
Basta con hacer una llamada a dicha función donde queremos que muestre los tweets.
Como argumentos pasamos nuestro usuario y el número de tweets a mostrar de la siguiente forma:
get_tweets("balfer",5) |
Con esto mostraríamos los últimos 5 tweets de mi cuenta de twitter.
Gracias sencillo y facil
Esta mal el codigo men, produce el siguiente error:
Warning: simplexml_load_file(http://api.twitter.com/1/statuses/user_timeline/Mi_Usuario.xml) [function.simplexml-load-file]: failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in …
Lo he probado y funciona correctamente, puedes ver un ejemplo aquí.
No obstante he cambiado la forma de mostrar el código por si generaba «basura» y eso era lo que daba problemas.
Reinténtalo y me comentas qué tal.
Un saludo.
Muy sencillo y funciona de maravilla. Gracias brother…
Excelente! Funciona de 10.
Muchas gracias por compartir!
solo funcioa con te twitter con el mio no, al cambiar el usuario no funciona alguna solucion
He probado con otras cuentas de usuario y funciona bien. Prueba de nuevo y coméntame qué error obtienes.
lo probe pero me salen tweets de otros usuarios y cambie el usuario! cual podria ser la causa?
En el script debes llamar a tu usuario, compruebalo.
Tras horas buscando, os dejo la forma más fácil que he encontrado para mostrar el timeline de un usuario:
https://github.com/davidmigloz/Twitter-Timeline
Es muy configurable en cuanto a la información que quieres mostrar y puedes personalizar fácilmente el código html que genera. Y además, está en español.
Un saludo
Gracias Juan, viene bien para reforzar la entrada. :-D