Newsfeeds sind heute mehr den je in aller Munde.
In der Blogosphäre gehören Newsfeeds, ob nun Atom oder RSS, zum Alltag.
Trotzdem werde ich offt gefragt wozu man denn diese Feeds braucht, wenn doch jeder sich auf der Webseite, Blog ect. direkt informieren kann, und ob es
nicht sinnvoller wäre die Webseite zu publizieren.
Man muss das im zusammenhang sehen. Sicherlich, die Publikation der Seite an sich ist sehr wichtig, aber der Newsfeed kann sehr viel zur Verbreitung der Seite beitragen.
In letzter Zeit habe ich mich mit recht vielen Personen aus meinem Umfeld darüber unterhalten und diskutiert, daher möchte ich heute mal eine kleine Abhandlung über
das Thema Newsfeeds schreiben.
Bei Newsfeeds handelt es sich um eine recht einfache XML-Datei, die sich leicht über einen Feed-Reader auslesen oder in die eigene Webseite als Newsticker einbauen lässt.
Beinahe jeder browser hat heut zu Tage einen eingebauten Feed-Reader, selbst das alte Outlook hat einen. Wenn also interessierte Besucher einer Webseite einen Newsfeed abbonieren möchten müssen sie dafür nichtmal spezielle Feed-Reader installieren. Nun warum sollten sie das tun?
Ganz einfach, weil sie vieleicht nicht ständig die Webseite oder den Blog nach neuen Beiträgen absuchen wollen und weil man so viel schneller Neuigkeiten erfahren kann, selbst wenn man die begehrte Seite nicht besucht.
Wenn die eigne Webpage nun einen gewissen Status besitzt, wird vieleicht der eine oder andere User die Idee bekommen, News der selbigen in seinem eigenen Webauftritt darzustellen um einfach von der Popularität zu profitieren.
Auch hier kann man ganz bequem auf den Newsfeed zurückgreifen. Da es sich bei RSS-Feeds um einfache XML Strukturen handelt, benötigt mann nur einge wenige zeilen PHP. Hier kann man sich sehr komfortabel der SimpleXML Funktionen des PHP bedienen.
Aber eine kleine Warnung am Rande :
Erst die Stuktur des gewünschten RSS-Feeds betrachten und dann loslegen, diese kann von version zu version unterschiedlich sein.
Extension für Firefox
Bei Firefox hilft einem da die Extension RSS-Editor, er ist nach der Installation unter Extras verfügbar und eignet sich sowohl zum Erstellen als auch zum Betrachten der Newsfeeds. Man hat auch die Möglichkeit die Anzeige des Editors zu verändern und kann sich zwischen float, Sidebar und Tab entscheiden, ich bevorzuge eher Tab aber sollte jeder selbst entscheiden.
Newsfeed mit SimpleXML einlesen
So nun wissen wir ja wie unser Newsfeed aussieht und können loslegen.
Ich habe nur einige Zeilen PHP-Code Versprochen also keine Angst vor PHP es ist ganz einfach.
für das Beispiel nehmen wir uns einen Feed von WordPress vor, weil die Struktur der WP-Feeds einfach am verbreitetsten ist.
Der Code:
| $xmlfile = “http://blogg-it.net/index.php/weblight-blog.feed?type=rss”;
$xml = simplexml_load_file($xmlfile); |
Dieser Zweizeiler macht aus allen Daten des feeds ein, für uns verwendbares Objekt.
Nun benutzen wir die nächsten Zeilen um die Daten aus diesem Objekt zu extrahieren, was wir mit einer foreach Schleife bewerkstelligen.
| echo “<h1>Web Front News</h>”; echo “<ul>”; foreach ($xml->channel->item as $a) { $hyperlink= ‘<a href=”‘.$a->link.’” target=”_blank”>’ . $a->title. ‘</a><br>’; $datum = substr($a->pubDate, 5, 11); |
Zum Verständniss, alle HTML Zeilen werden mit “echo” erzeugt und “foreach” ist die eigebundene Schleife, das bedeutet bei jedem Eintrag des Feeds wird
eine HTML Ausgabe in In form einer Liste erzeugt, dabei bleibt die Headline Web Front News immer die selbe und nur die titel der News weden dann darunter mit “foreeach” erzeugt.
In der Variablen $xmlfile wird die URL des RSS-Feeds abgelegt um dann in das Objekt $xml eigelesen. In den nächsten zeilen legt man fest, dass die Ausgabe al liste erfolgen soll und führt dann die “foreeach” Schleife aus. Hilfreich für die spätere Anpassung mit CSS wäre hier noch das einfügen von IDs oder Classen in die <ul> bzw. <li> Tags.
So machen wir weiter mit der foreach Schleife selbst.
Sie verarbeitet für uns die Elemente des XML-Objekts ( $xml ), für uns sind das link und title.
Hierbei werden die einzelnen Titel des RSS-Feeds herausgenommen und dann in einen Link umgewandelt, welcher dann die eigentliche Anzeige darstellt.
Hier bietet sich bei der RSS version 2.0 auch an die Beschreibung des Eintrags darzustellen, hierfür nehmen wir einfach echo “<li>”.$a->description.”</li>”;
Nun bestimmen wir mit $datum und pubDate noch einen Datum und stellen mit ” if ” sicher, dass nur die aktuellen Tagesnews angezeigt werden.
Dieses kleine Script ist eigentlich alles was man benötigt um einen Newsfeed auf der eigenen Webseite darzustellen.
Natürlich lässt es sich mit etwas knowhow zu weit komplezeren gebilden ausbauen und mit interaktiven elementen versehen.
Ich wünsche alle viel Spass beim rumprobieren.

Leave a Reply