Websupporter

Vor allem über WordPress.

Einen neuen Tag in das WordPress RSS-Feed einbinden

So, nach einiger Zeit habe ich nun endlich mein neues Hardware/Software-Bundle zusammengestellt und einen neuen Screencast veröffentlicht. Yeah! Ein neuer Entwickler-Screencast zu WordPress 😀 und diesmal zum Thema RSS Feeds in WordPress.

In Zeiten der WordPress REST API erscheinen RSS-Feeds plötzlich etwas verstaubt und klobig. Wer zieht XML schon dem schlanken JSON vor? Doch, wenn man sich das RSS-Feed System von WordPress einmal näher anschaut erkennt man auch dort noch einiges Potential, wenn es darum geht, schnell und einfach ein paar weitere Daten auszutauschen. Ich hatte vor einiger Zeit einen Kunden, dessen RSS-Feed auf anderen Webseiten eingebunden wurde und diese Webseiten benötigten nun weitere Informationen über die Blogbeiträge, welche sie einbanden. So gab es bestimmte Meta Informationen, welche mit übertragen werden sollten. Nun hätte ich hier wahrscheinlich einige schöne REST-Api Endpoints definieren können, die anderen Webseitenbetreiber auf ein schönes JSON-Feed hinweisen können und diese hätten dann ihre Software komplett neu schreiben können, um die gewünschten Daten zu erhalten. Oder aber, wir übergeben diese Daten mit dem von WordPress ausgegebene RSS-Feed.

Youtube

Click the button below to load the content from Youtube.

Dieses Szenario spiele ich in diesem kurzen Video-Podcast durch. Basics, welche Du zum Verständnis des Screencasts benötigst (neben WordPress Grundlagen):

Wir haben die Metainformation „Farbe“, welche als ein weiterer Tag in das RSS-Feed eingebunden werden soll. Dazu haken wir uns zunächst in den Action-Hook ‚rss2_item‚ ein, welcher vor dem schließenden </item> ausgeführt wird. Mit Hilfe dieses Hooks können wir einen weiteren Tag einfügen. Einfach einen weiteren Tag einzufügen macht das RSS Dokument allerdings ungültig, wie man mit dem Feed Validator vom W3C prüfen kann. Deshalb müssen wir einen neuen Namespace deklarieren, in welchem wir den neuen Tag einpflegen können. Dazu gibt es den Actionhook ‚rss2_ns‚. Dieser wird ausgeführt, nachdem WordPress seine eigenen Namespaces deklariert hat.

Mit diesen beiden Hooks zusammen ist es also möglich, das WordPress Feed auf eine valide Art und Weise um einen Tag zu erweitern:

Embed from pastebin.com

Click the button below to load the content from pastebin.com.


Always allow pastebin.com

Nachdem ich dann durch war mit meinem kleinen Tutorial dachte ich mir ach, zeige ich Euch doch noch, wie einige der Filter funktionieren und hatte mich am 'the_title_rss'-Filter versucht. Na, das war ein Fail 😂 Ich hatte jetzt aber keine Lust mehr zu gucken, was genau ich da falsch gemacht habe. Wenn es jemand sieht, schreibt es doch gerade in die Kommentare 😉

Ich hoffe Sound und Auflösung des Videos sind so erstmal okay, hatte mich einige Zeit gedauert, in die neue Software einzuarbeiten. Dafür bin ich aber doch recht zufrieden mit meinem Intro, welches ich entworfen habe. Für einen Entwickler doch gar nicht so schlecht, oder?

Über den Autoren

Seine erste Webseite hat David Remer 1998 in HTML verfasst. Wenig später war er fasziniert von DHTML und JavaScript. Nach jahrelanger Freelancerei arbeitete er zunächst für Inpsyde und ist heute Entwickler bei Automattic. Außerdem hat er das Buch "WordPress für Entwickler" verfasst.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.