E ora vediamo come possiamo inserire un feed online in una nostra pagina php. Per farlo, useremo la classe MagpieRSS.
Questa è una classe molto potente, ed è di una semplicità disarmante.
Ecco un esempio di utilizzo:
Codice PHP:
<?
require_once('magpierss/rss_fetch.inc');
//Questo è l'URL del feed che andremo a parsare. Nell'esempio c'è il mio :-)
$url = "http://www.guardaqua.it/rss/rss.php";
//apre il feed
$rss = fetch_rss ($url);
//Metto il titolo del feed in una variabile
$feedchanneltitle = $rss->channel['title'];
//Comincio a scrivere l'output
echo '<h1>Sto stampando il contenuto di '.$feedchanneltitle.'</h1>';
//Incominciamo un ciclo per ogni item
foreach ($rss->items as $item) {
//Qui potrei mettere dei controlli: se le variabili non sono vuote, ecc
// if(!empty($item['description'])) {
//Variabilizzo tutto
$itemlink = $item['link'];
$itemtitle = $item['title'];
$pubdate = $item['pubdate'];
$description = $item['description'];
$author = $item['author'];
$feedurl = $dato['feedurl'] ;
//Formatto la data con un intero UNIX TIMESTAMP (del tipo 1129218794) per poterla maneggiare
$pubdate = strtotime ($pubdate);
//Formatto la stringa della data secondo i miei gusti
$pubdate = date("D, d F Y, G.i", $pubdate);
// } //chiudo eventuali controlli con IF
//Ora potrei cominciare a stampare il feed a video
echo '<hr/>';
echo '<h2>Titolo: '.$itemtitle.', Data: '.$pubdate.'</h2>';
//Strip_tags è aggiunto per evitare di mostrare l'HTML eventualmente contenuto nell'articolo
echo '
'.strip_tags($description).'</p>';
echo '<h3>Da: '.$feedchanneltitle.', Autore: '.$author.'</h3>';
echo '[url="'.$itemlink.'"]'.$itemlink.'[/url]';
} // chiudo il ciclo FOREACH ITEM
I contenuti sono formattati con un HTML molto elementare, ma nulla vieta di rendere la visualizzazione più fine (per esempio con i CSS).
E con questo è tutto. Le due classi qui presentate vi permettono di creare e leggere un feed rss in modo semplice, a voi trovare, con l'aiuto della vostra fantasia, un utilizzo creativo dei feed!
Spero di aver fatto cosa gradita se non utile con questa pillola, e rimango a vostra disposizione per approfondimenti, domande, o altro.