El día de ayer me puse a usar estos dos servicios de microblogging, Twitter y Plurk, aunque para ser sincero, ya estaba registrado en Twitter desde hace 1 año pero tenía la cuenta sin usarla, y bueno hace unos 4 días venía probando algunas cosas con la librería SimplePie para recoger datos de archivos RSS y entonces se me ocurrió agregar en mis blogs CelulaWeb y Cinespectaculo bloques con mis últimos post en Twitter y Plurk haciendo uso de esta librería y un poco de PHP.
El resultado obtenido lo pueden ver en el menú lateral de este blog donde titula "Sígueme en Twitter" y el código fuente para ambos casos no es nada complicado, hasta se puede mejorar con un poco de ingenio, lo único que necesitamos es la dirección de nuestro archivo RSS tanto de Twitter como de Plurk, la librería SimplePie que deberán descargar y subir a tu hosting, además de crear una carpeta llamada cache, y el código fuente vendría a ser el siguiente:
Para Twitter o Plurk(10 últimos post)
Ahí lo tienen, como repito, no es muy complicado el script es el mismo para ambos casos, sólo varía la URL del archivo RSS y listo, en la web de SimplePie tienen más ejemplos sobre cómo aplicar esta librería, espero que les pueda ser útil.
El resultado obtenido lo pueden ver en el menú lateral de este blog donde titula "Sígueme en Twitter" y el código fuente para ambos casos no es nada complicado, hasta se puede mejorar con un poco de ingenio, lo único que necesitamos es la dirección de nuestro archivo RSS tanto de Twitter como de Plurk, la librería SimplePie que deberán descargar y subir a tu hosting, además de crear una carpeta llamada cache, y el código fuente vendría a ser el siguiente:
Para Twitter o Plurk(10 últimos post)
<?php
// a este archivo lo pueden llamar mitwitter.php o miplurk.php según sea el caso
include('simplepie.inc'); // incluímos la librería SimplePie
// cambiamos el formato de la fecha del archivo RSS al modo "días transcurridos, horas transcurridas, minutos transcurridos"
define('SIMPLEPIE_RELATIVE_DATE', 'YmdHis');
function doRelativeDate($posted_date) {
$in_seconds = strtotime(substr($posted_date,0,8).' '.
substr($posted_date,8,2).':'.
substr($posted_date,10,2).':'.
substr($posted_date,12,2));
$diff = time()-$in_seconds;
$months = floor($diff/2592000);
$diff -= $months*2419200;
$weeks = floor($diff/604800);
$diff -= $weeks*604800;
$days = floor($diff/86400);
$diff -= $days*86400;
$hours = floor($diff/3600);
$diff -= $hours*3600;
$minutes = floor($diff/60);
$diff -= $minutes*60;
$seconds = $diff;
if($months>0) {
// fecha de publicación en el formato dd/mm/YYYY
return substr($posted_date,4,2).'/'.substr($posted_date,6,2).'/'.substr($posted_date,0,4);
}else {
if($weeks>0) {
// semanas y días transcurridos
$relative_date .= ($relative_date?', ':'').$weeks.' semana'.($weeks>1?'s':'');
$relative_date .= $days>0?($relative_date?', ':'').$days.' día'.($days>1?'s':''):'';
}elseif ($days>0) {
// días y horas transcurridas
$relative_date .= ($relative_date?', ':'').$days.' día'.($days>1?'s':'');
$relative_date .= $hours>0?($relative_date?', ':'').$hours.'h'.($hours>1?'':''):'';
}elseif ($hours>0) {
// horas y minutos transcurridos
$relative_date .= ($relative_date?', ':'').$hours.'h'.($hours>1?'':'');
$relative_date .= $minutes>0?($relative_date?', ':'').$minutes.'min'.($minutes>1?'':''):'';
}elseif ($minutes>0) {
// sólo minutos transcurridos
$relative_date .= ($relative_date?', ':'').$minutes.'min'.($minutes>1?'':'');
}else {
// sólo segundos transcurridos
$relative_date .= ($relative_date?', ':'').$seconds.'seg'.($seconds>1?'s':'');
}
}
return $relative_date;
}
$feed = new SimplePie();
$feed->set_feed_url('URL DE TU ARCHIVO RSS DE TWITTER O PLURK');
$feed->init();
$new = array();
foreach($feed->get_items() as $item) {
$new[] = $item;
}
$itemlimit = 0;
foreach($new as $item) { // hacemos un bucle que nos devolverá los posts
if($itemlimit==10) { break; } // con esto limitamos a que sólo se muestren 10 posts puedes editarlo y mostrar los que desees
$link = $item->get_permalink();
$fecha = doRelativeDate($item->get_date(SIMPLEPIE_RELATIVE_DATE));
$title = utf8_decode($item->get_title());
?>
<a href="<?=$link?>" target="_blank"><strong><?=$fecha?>:</strong></a><br />
<?=$contenido?>
<?php
$itemlimit = $itemlimit + 1; // aumentamos un post en cada pasada del bucle
}
?>
Ahí lo tienen, como repito, no es muy complicado el script es el mismo para ambos casos, sólo varía la URL del archivo RSS y listo, en la web de SimplePie tienen más ejemplos sobre cómo aplicar esta librería, espero que les pueda ser útil.
| Compártelo: |
Enlaces relacionados
Nos encantaría que dejaras tu comentario acerca de esta entrada, pero para ello debes tener en cuenta lo siguiente:
- No escribas todo el texto en mayúsculas.
- Procura que tus comentarios estén relacionados con lo que se ha publicado en esta entrada.
- Respeta a los demás lectores de este blog. Si hay algún comentario que no es de tu agrado, expón tus ideas de forma alturada.
- No utilices groserías en tus comentarios.
Los comentarios que incumplan los puntos mencionados serán eliminados inmediatamente.




























