He instalado un nuevo plugin que me permite listar una serie de Blogs y, a través de su feed, las últimas entradas publicadas en ellos. Este plugin supera con creces el antiguo apartado de BlogRoll típico de cada blog, en que se listaban algunas páginas web (mayoritariamente blogs) de conocidos, amigos, interés o pertenecientes a una red de blogs.
Con el plugin el sistema RSS cobra mucho más sentido, la información mostrada está siempre actualizada y le resulta mucho más útil al usuario ya que, no sólo puede conocer un nuevo blog que pueda ser de su interés, sino que además puede ver cuáles han sido los últimos artículos publicados (sus títulos).
De momento dejo el antiguo apartado de BlogRoll activo porque, entre otras cosas, los Blogs de la red libreticas no funcionan, desconozco que problema puede haber con su servidor ya que el plugin es capaz de leer blogs de todo tipo tanto en MySpace, como WordPress o Blogger.
Podéis descargar el plugin de la web de Wordpress, pero su versión original es un pelín distinta a la mía, si queréis el código de mi versión lo tenéis aquí:
$google_ajax_feed_apikey="ABQIAAAAuJkdlr7xwX_YfjjLpLLh0hRwoxWCe8BkNXMASddQUXFnzy9pGhT8bwjcLGYo1bGOzPKEpj8Cqfesig";
$top_friends_feeds = array (
'http://feeds.feedburner.com/elqudsi',
'http://elventanalderosa.spaces.live.com/feed.rss',
'http://feeds.feedburner.com/docs4beto',
'http://www.jcdelolmo.es/feed/',
'http://rojomariposa.wordpress.com/feed/',
'http://igorsanro.blogspot.com/feeds/posts/default',
'http://www.pilarjerico.com/blog/?feed=rss2',
'http://www.jesusencinar.com/index.rdf',
'http://www.marcvidal.cat/marcvidal/atom.xml',
'http://www.netoraton.es/?feed=rss2',
'http://www.luissolana.com/?feed=rss2',
'http://www.enriquemeneses.com/feed/',
'http://www.romenauer.com/?feed=rss2',
'http://www.eleconomista.es/blogs/frikieconomia/?feed=rss2',
'http://rss.elmundo.es/rss/descarga.htm?data2=13',
'http://blogs.ft.com/techblog/feed/',
'http://feeds.feedburner.com/elblogdesiner',
'http://feeds.feedburner.com/blogotaku',
'http://feeds.feedburner.com/blogoempresa',
'http://feeds.feedburner.com/deporteaccion'
);
function fetch_google_ajax_feed($feed) {
if (function_exists('curl_init')) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $feed);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, "http://www.entrecodigos.com/");
$result = curl_exec($ch);
curl_close($ch);
return $result;
} else {
if ($result = file_get_contents($feed)) {
return $result;
}
}
}
function top_friends(){
$top_friends = get_option("top_friends");
if($top_friends){
$time = time();
if(($time - $top_friends["time"])<3000){
echo $top_friends["top_friends"];
return;
}
}
global $google_ajax_feed_apikey, $top_friends_feeds;
$top_friends_string .= '<ul>';
foreach($top_friends_feeds as $top_friends_feed){
$google_ajax_feed_url = 'http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q='.urlencode($top_friends_feed);
if($google_ajax_feed_apikey) $google_ajax_feed_url .= '&key='.$google_ajax_feed_apikey;
$result = fetch_google_ajax_feed($google_ajax_feed_url);
$result = json_decode($result);
$feed = $result -> responseData-> feed;
$entries = $feed -> entries;
if($entries){
$top_friends_string .= '<li style="margin-top:8px;" >'. "\n";
$top_friends_string .= '<a href="'.$feed -> link.'" class="title" title="'.$feed -> description.'" target="_blank" >'.$feed -> title.' '. "\n";
$last_update_time = strtotime($entries[0] -> publishedDate);
$time_now = time();
$cc = $time_now - $last_update_time;
$days = floor($cc/(3600*24));
$hours = floor(($cc%(3600*24))/3600);
$mins = floor($cc%3600/60);
$i = 0;
foreach($entries as $entry){
if($i>2) continue;
$entry_title = $entry -> title;
$top_friends_string .= '<a href="'.$entry -> link.'" title="'.$entry_title.'" target="_blank" >';
if ( strlen($entry_title)>34 ) $top_friends_string .= substr($entry_title, 0, 34).'...'; else $top_friends_string .= $entry_title;
$top_friends_string .='</a>';
$cc = $time_now - strtotime($entry -> publishedDate);
$days = floor($cc/(3600*24));
if ($days<1){$top_friends_string .= ' <span style="color:#FF0000;">New!</span>';}
elseif ($days<2){$top_friends_string .= ' <span style="color:#EE9900;">2 días</span>';}
$top_friends_string .= '<br />'. "\n";
$i++;
}
$top_friends_string .= '</li>'. "\n";
}
}
$top_friends_string .= '</ul>';
$top_friends = array("time"=>time(),"top_friends"=>$top_friends_string);
update_option('top_friends', $top_friends);
echo $top_friends_string;
}
?>
Cualquier sugerencia o mejora de ese código será bienvenida (y seguro que su autor os lo agradece). He hecho copy&Paste cambiando los < por < ; y poco más, espero que se haya copiado bien.
Por otro lado, el plugin de Feeds no es el único cambio que he hecho en el Blog en estos días, también he instalado por fin el plugin para las fotos de Flickr (a pie de página), los artículos mas comentados y hasta me ha dado por empezar a utilizar las etiquetas (aunque la nube quiero modificarla para que solo muestre las que se utilicen mínimo 3 veces).
Además, he cambiado el CSS para permitir que los enlaces en las entradas sean azules, siguiendo los estándares de usabilidad y permitiendo una mejor navegación por el blog. Por último, he colocado un enlace con la opción de comentar al final de cada bloque de artículo, lo que seguro mejora la cantidad de comentarios en el Blog al ser una opción más visible.














