PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RSS Feeds einbauen


RMC
2004-09-20, 22:37:53
So...bin draufgekommen, dass RSS Feeds in letzter Zeit irgendwie wild um sich greifen und ziemlich populär sind.

Nur irgendwie blick ich net ganz durch. Mit einem Reader kann man sich also diese Feeds auslesen und anzeigen lassen (Offline), sich also praktisch die neuesten News nach Hause holen, ohne hunderte von Seiten abfragen zu müssen.

Gut...ist ja ganz vernünftig.

Verschiedene News-Seiten bieten tagesaktuelle Themen als Feeds an...angenommen ich möchte jetzt diese aber gern in meine Seite einbauen, sodass eine Art "Ticker" ensteht mit den News von einer fremden Seite, bereitgestellt durch das RSS-Feed.

Was muss ich dazu machen? Das Feed existiert zB als XML oder RDF (?) und steht frei zur Verfügung.

Wie kann ich das einbauen und so anzeigen lassen wie ich möchte? Muss ich mir dazu einen extra XML Parser programmieren (PHP) oder ist jedes Feed gleich aufgebaut? Gibts dazu auch Tools?


Oder gleich einfach gefragt: Wie könnte ein PHP-Skript aussehen, dass so ein RSS-Feed nutzt und die Infos anzeigt?

Gast
2004-09-20, 22:48:34
also Google spuckt doch da einige ganz brauchbare Ergebnisse aus ;)
http://www.google.com/search?hl=en&lr=&ie=UTF-8&q=RSS+Feed&btnG=Search

ich denke, dass du da, wenn es keine Elegenatere Methode geben sollte, mit RegExen weiterkommst...

Black-Scorpion
2004-09-20, 23:21:09
Oder gleich einfach gefragt: Wie könnte ein PHP-Skript aussehen, dass so ein RSS-Feed nutzt und die Infos anzeigt?
Nicht jeder RSS Feed darf auch auf andere Seiten übernommen werden.
Ohne Erlaubnis wäre ich vorsichtig.

Hier ist ein Beispiel Script für den Heise Security Feed.
Der darf verwendet werden.
http://www.heise.de/news-extern/news.shtml


<?
print "<span class=\"heisenews\">";

$fcontents = join ('', file ('http://www.heise.de/security/news/news.rdf'));

$fcontents = str_replace ("</item>", "", $fcontents);
$fcontents = str_replace ("</link>", "", $fcontents);

$splices = explode ("<item>", $fcontents);

for ($i = 1; $i < count($splices); $i++){
$link = explode("<link>",$splices[$i]);
$link[1] = strip_tags($link[1]);
$headline = str_replace ("<title>", "<a href=\"" . trim($link[1]) . "\" target=\"_blank\" class=\"heiseheadline\">", $splices[$i]);
$headline = str_replace ("</title>", "</a>", $headline);
$headline = explode ("<link>", $headline);
$headline = $headline[0];
print $headline . "<img src=\"1.gif\" height=20 width=1 align=top><br>";
}

print "</span>";
?>

HellHorse
2004-09-21, 11:15:53
Wie kann ich das einbauen und so anzeigen lassen wie ich möchte? Muss ich mir dazu einen extra XML Parser programmieren (PHP) oder ist jedes Feed gleich aufgebaut?
Nein, leider sind die einzelenen Feeds zwar ähnlich aber nicht gleich.
Ganz hilfreich ist dieser Artikel:
http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html
besonders das Ende der zweiten Seite mit den Links zu den Specs


Gibts dazu auch Tools?

Schon mal an XSLT gedacht?
Ok, es ist ein Aufwand und effizient ist es nicht. Dafür ist es flexibel und du lernst etwas. ;)
Siehe z.B.
http://www.xml.com/pub/a/2003/01/02/tr.html
Einen XML-Parser hat PHP garantiert und bezügl XSLT hat Google auf Anhieb das ausgespuckt:
http://ch2.php.net/manual/en/ref.xsl.php

und als Beispiel ist auch das ganz nett
http://dotnetjunkies.com/Tutorial/9FB56D07-4052-458C-B247-37C9E4B6D719.dcik

govou
2004-10-02, 15:47:24
http://wordpress.org/
:)