Tutorial - RSS-Feeds
Einleitung
Ein RSS-Feed ist, ähnlich wie ein Nachrichten-Ticker, ein Kanal auf dem üblicherweise die neuesten Nachrichten einer Webseite oder z.B. auch neue Blog-Einträge sofort nach der Veröffentlichung erscheinen. RSS-Feeds können an vielen Orten eingebunden und von anderen Leuten abonniert werden und sind daher ideal geeignet um Neuigkeiten schnell und einfach zu verbreiten. Mit DynPG können Sie einen RSS-Feed im Handumdrehen erstellen, denn alles was Sie hierfür benötigen ist ein einziges weiteres Snippet.
Erstellen des RSS-Feeds
Für die Erstellung eines RSS-Feeds nutzen wir ein weiteres mal die Template-Engine von DynPG. Mit einem speziellen Template erzeugen wir den Nachrichtenkanal und überlassen DynPG dann das Einfügen aller Nachrichten-Artikel. Dazu erzeugen wir eine Seite, welche nur das Snippet für den RSS-Feed enthält. Auf diesen Feed verweisen wir dann später mit einem Link, den wir auf der eigentlichen Webseite platzieren. Das Snippet sieht erst einmal aus wie folgt:
rss_feed.php
<?php require('../dynpg/getcontent.php'); $DynPG->SetParam_PathToRoot('../dynpg/'); $DynPG->sendHTTPHeader('iso-8859-1', 'text/xml'); $DynPG->setupTemplate('rss'); $DynPG->SetParam_AA_Order( Array( 'DATE_FROM' , 'TIME_FROM' , 'DATE_TO' , 'TIME_TO' , 'CREATEDATE' ) ); $DynPG->SetParam_AA_Sort( Array( 'DESC', 'DESC', 'DESC', 'DESC' , 'DESC' ) ); $DynPG->SetParam_AA_Anytime(true, true); $DynPG->SetParam_AA_Groups( Array($newsGroupID) ); $DynPG->SetParam_AA_ForceNav(false); $DynPG->SetParam_AA_fullLoadText(true); $DynPG->SetParam_AA_CategoryNavigation(false); $DynPG->SetParam_AA_Maxview(999); $DynPG->Write_AllArticles(); $DynPG->SetupTemplate('default'); ?>
Mit dem verwendeten Template "rss" weisen wir DynPG an, die Artikel in der entsprechenden Formatierung auszugeben, damit sie später durch einen RSS-Reader gelesen werden können. Im Anschluss wird die Sortierung der Artikel festgelegt (hier absteigend nach dem Datum der ersten Veröffentlichung). Danach legen wir die Gruppe fest, die im Feed ausgegeben werden soll. $newsGroupID muss hier durch die ID der Gruppe ersetzt werden, welche die anzuzeigenden Artikel enthält, also z.B. eine Gruppe News mit den neuesten Nachrichten.
Einbindung in die Webseite
Da der RSS-Feed immer eine eigenständige Seite sein sollte, müssen wir das Snippet nicht großartig in die bereits bestehende Webseite einbinden. Wir brauchen dort lediglich einen Link auf den Feed zu platzieren. Nach einem Klick auf diesen Link wird der Besucher dann auf die Seite des Feeds weitergeleitet und kann ihn dann dort abonnieren, sofern er das möchte. Der folgende HTML-Code für den Link genügt also bereits für die Einbindung:
Bei einem Klick auf den Link wird dann abhängig vom Browser eine vollständige Version des Feeds angezeigt. Andere Feed-Reader können diesen dann auslesen und entsprechend formatiert ausgeben, wobei dann üblicherweise nur der Titel und Lead-Text angezeigt wird. Beispielhaft könnte eine vollständige Ausgabe wie folgt aussehen: