Ponieważ czasem trzeba wyświetlić na stronie linki z oddalonego RSS-a napisałem do tego skrypt w PHP. Są podobne rzeczy w Sieci, ale nieco archaiczne i obciążające serwer. Starałem się to zminimalizować w moim skrypcie. Wymaga PHP > 5.
<?php //header("Content-Type: text/html; charset=iso-8859-2"); //RSSerPHP //Autor: Saletra /* Zmienne, kolejno: czas odświeżania (w minutach - należy zmieniać wyłącznie liczbę), ilość pobieranych elementów, plik cache, adres XML-a */ $czas = '-60 minutes'; $ileRss = 10; //Folder dla pliku cache musi mieć CHMOD 777. $file = "rss/cache.htm"; $plikRss = 'http://www.forum.tweaks.pl/rss/forums/1-forum-komputerowe/'; // Sprawdza czy plik trzeba odswiezyc, jeśli nie, wyświetla dane z cache if(is_file($file) && (date('d-m-Y H:i:s', filemtime($file))) >= date('d-m-Y H:i:s', strtotime($czas))){ echo file_get_contents($file); // Buduje plik cache } else { $doc = new DOMDocument(); $doc->load($plikRss); $i=0; if(is_file($file)){ $wyczysc = file_put_contents($file, ''); } $fp = fopen($file, "w+"); foreach ($doc->getElementsByTagName('item') as $node) { if($i>=$ileRss){ break; } $i++; $itemRSS = array ( 'title' => $node->getElementsByTagName('title')->item(0)->nodeValue, 'link' => $node->getElementsByTagName('link')->item(0)->nodeValue, ); /* Konwertuje z UTF-8 na ISO-8859-2, można włączyć jeśli są problemy z polskimi znakami. Wymagane iconv na serwerze $itemRSS['title'] = iconv('UTF-8', 'ISO-8859-2', $itemRSS['title']); */ $link = "<a href='".$itemRSS['link']."'>".$itemRSS['title']."...</a> "; echo $link; fwrite($fp, $link); } fclose($fp); } ?>