Estoy trajando en mi website personal y quiero publicar en una seccion los titulos y enlces los mismos de Tumblr. El problema es que unque me parece estar leyendo los datos correctamente recibo un error, especificamente este: "Warning: Invalid argument supplied for foreach() in ... tumblr_rss/index.php on line 15".
Esto es un ejemplo de como Tumblr genera el XML de su RSS:
Código HTML:
<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0"> <channel> <atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/> <description>Mi blog que no es mi blog.</description> <title>JuniHH</title> <generator>Tumblr (3.0; @junihh)</generator> <link>http://junihh.tumblr.com/</link> <item> <title>[VIDEO] Impresionante, me encanta: http://bit.ly/CIM63</title> <description><p>[VIDEO] Impresionante, me encanta: <a href="http://bit.ly/CIM63" target="_blank">http://bit.ly/CIM63</a></p></description> <link>http://junihh.tumblr.com/post/197569135</link> <guid>http://junihh.tumblr.com/post/197569135</guid> <pubDate>Sat, 26 Sep 2009 12:50:05 -0430</pubDate> </item> <item> <title>Efectos superinteresantes con los videos de YouTube… merece un waaaooooo:...</title> <description><p>Efectos superinteresantes con los videos de YouTube… merece un waaaooooo: <a href="http://yooouuutuuube.com" target="_blank">http://yooouuutuuube.com</a></p></description> <link>http://junihh.tumblr.com/post/197569124</link> <guid>http://junihh.tumblr.com/post/197569124</guid> <pubDate>Sat, 26 Sep 2009 12:50:05 -0430</pubDate> </item> <item> <title>Buenisimo —> RT @Linaceballos: RT @NestorCarrasco: 87 ejemplos de usos creativos de...</title> <description><p>Buenisimo —> RT @Linaceballos: RT @NestorCarrasco: 87 ejemplos de usos creativos de YouTube! Excelente! <a href="http://bit.ly/87coolthings" target="_blank">http://bit.ly/87coolthings</a></p></description> <link>http://junihh.tumblr.com/post/197569139</link> <guid>http://junihh.tumblr.com/post/197569139</guid> <pubDate>Sat, 26 Sep 2009 12:50:05 -0430</pubDate> </item> </channel> </rss>
Código PHP:
<?php
function setTumblrPost ()
{
$url = 'tumblr_rss.xml';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$data = simplexml_load_string($output);
foreach ($data->channel as $dt)
{
$tmbTitu = $dt->item->title;
echo $tmbTitu;
}
//return $tmbList;
}
setTumblrPost ();
?>