Content

Content Syndication mit RSS

5. September 2003
von

Content Syndication via RSS ist im Kommen. Immer mehr Websites und Blogs bieten eine solche Möglichkeit an. Davon kann man gleich doppelt profitieren. Entweder man verwendet einen Reader und bleibt auf dem Laufenden ohne surfen zu müssen oder man stellt einen thematisch geeigneten Feed mit den Inhalten Dritter auf den eigenen Seiten zur Verfügung.

Ein RSS Feed ist eine einfach aufgebaute XML-Datei, die man über eine Scriptsprache auslesen und in beliebige Seiten einfügen kann. Wir verwenden PHP dazu.

Der Vorteil dabei: Ein RSS Feed stellt die Inhalte als Text zur Verfügung. Design, Textformatierungen oder -Farben können individuell an jede Website anpasst werden.

Um Ihnen unter PHP die nötigen RSS-Lesefunktionen zur Verfügung zu stellen, existieren mehrere kostenlos einsetzbare Funktionen und Programme. Wir zeigen hier exemplarisch die Benutzung des MagpieRSS Reader (zu Deutsch übrigens “Elster”), der sowohl die RSS Formate 0.9x als auch 1.0 unterstützt. Nach dem Entpacken benötigen Sie eigentlich nur den Ordner extlib und die Include-Dateien mit der Endung .inc. Nach dem Upload der Dateien auf Ihren Server müssen Sie nur die Datei rss_fetch.inc in Ihre Seiten einbinden. Mit ihr stehen Ihnen dann die RSS-Lesefunktionen zur Verfügung und Sie können gleich loslegen.

drweb rssfeed1 foto
Ab sofort Top-Aktuell

Dieser PHP-Code liest nach der Installation von MagpieRSS ab sofort die aktuellen Dr. Web Artikel aus:

 <?php

require_once('rss_fetch.inc');
 $url = 'http://www.drweb.de/rss.xml';
 $rss
= fetch_rss($url);
 echo "<p>", $rss->channel['title'],
"</p>";
 echo "<p><ul>";
 foreach
($rss->items as $item) {
 $title = $item[title];
 $link = $item[link];

$desc = $item[description];
 echo "<li><p><a href=$link>$title</a><br>$desc</p></li>\n";

}
 echo "</ul></p>";
 ?>

Achten Sie darauf, den richtigen Include-Pfad für den Require-Befehl in der zweiten Zeile zu geben, ansonsten erhalten Sie eine Fehlermeldung.

Das ganze wird jetzt als unsortierte HTML-Liste ausgegeben. Sie können aber das Aussehen anpassen wie es Ihnen gefällt. Dafür ist hauptsächlich diese Zeile zuständig:

      echo "<li><p><a href=$link>$title</a><br>$desc</p></li>\n";

drweb rssfeed2 foto

…oder Platz sparend?

Wenn Sie zum Beispiel nur die Überschriften ohne den begleitenden Kurztext (Anreißer/Teaser) verwenden möchten, ändern Sie die Zeile wie folgt ab:

      echo "<li><p><a
href=$link>$title</a></p></li>\n";

Wenn Ihnen die Auswahl zu groß ist, begrenzen Sie sie einfach. So werden nur noch die ersten drei Beiträge angezeigt:

      <?php
 require_once('rss_fetch.inc');

$url = 'http://www.drweb.de/rss.xml';
 $i = 0;
 $rss = fetch_rss($url);

echo "<p>", $rss->channel['title'], "</p>";

echo "<p><ul>";
 foreach ($rss->items as $item) {

$title = $item[title];
 $link = $item[link];
 $desc = $item[description];

if($i < 3) {
 echo "<li><p><a href=$link>$title</a><br>$desc</p></li>\n";

$i++;
 }
 }
 echo "</ul></p>";
 ?>

Auf diese Weise können Sie Nachrichten, Beiträge, Inhalte der unterschiedlichsten Anbieter in die eigenen Seiten integrieren, sofern ein RSS Feed angeboten wird. Die gute Nachricht: Es werden immer mehr.

Ein Kommentar zu „Content Syndication mit RSS

  1. Mr. Quick am 15. Februar 2009 um 17:34

    gut das es Dr. Web gibt.. warum hab ich nicht gleich wieder hier nachgeschaut.. alles funktioniert SUPER…

    Auf anderen Seiten frage ich mich manchmal warum jemand eine Seite veröffentlicht mit scripten die nicht funktionieren..?

    Aber zum Glück gibts Dr. Web.. hat mich noch nie enttäuscht..

    Grüsse @all

Ein Kommentar? Schön!

Wir freuen uns immer über Leser, die durch nützliche und konstruktive Beiträge zum Thema eine Diskussion anstoßen oder den Artikel mit weiteren Informationen anreichern. Alle Kommentare werden in diesem Sinne moderiert. Zum Kommentar-Fairplay gehört für uns auch der Einsatz von rel="nofollow". Bitte verwenden Sie zudem als Namen weder eine Domain noch ein spamverdächtiges Wort. Vielen Dank!

*