Das Örtchen RSS-Feed
Suchen
Blog
Ähnliche Beiträge
Neueste Kommentare
Neueste Einträge
Populäre Einträge
Tagwolke
addon auswertung barcamp blog bug cms cms made simple datenkrake drupal feed film firefox frickeln friday gewinnspiel hardware how-to individualisierung meinung mmo modul nas php problem rss se7en server sicherheit sicherung software spiel teil theme trailer unterhaltung update windows windows 7 wordpress wow
Monatsarchiv

Drupal: Methoden der Feed-Aggregation

Im Rahmen eines Kunden-Projekts stand ich heute vor dem Problem, die Titel der aktuellsten fünf Beiträge eines externen Blogs auf einer Drupal 6 basierten Website anzuzeigen. Genauer gesagt sollten die Titel als Liste angezeigt und jeder Beitrags-Titel mit seiner URL auf dem externen Blog verlinkt werden. Zunächst dachte ich, daß dies kein größeres Problem darstellen sollte, da Drupal mit Aggregator schon im Core ein passendes Modul mitbringt, doch ich hatte mich zu früh gefreut.

Das Problem

Das externe Blog wird auf Blogspot.com gehostet und hat standardmäßig einen Atom-Feed. In meiner Test-Installation musste ich leider feststellen, daß Aggregator Probleme beim Import von Einträgen aus diesem Feed hat. Trotz mehrmaligem manuellen Auslösen des Imports wurden keine Beiträge gefunden. Bei einem Test mit dem FeedBurner-Feed eines anderen Blogs klappte hingegen alles problemlos.

Die Recherche

Eine kurze Recherche zeigte, daß Aggregator schon seit Drupal 4.7 Probleme mit Atom-Feeds hat und dieses Problem wurde auch für Drupal 6 nie offiziell gefixt. Die beste Lösung ist derzeit der Verzicht auf Atom-Feeds und stattdessen die Nutzung von RSS-Feeds. Dies ist mit wenig Aufwand möglich, da an die Blogspot-URL lediglich ein zusätzlicher Parameter angehängt werden muss:

Atom 1.0: http://blogname.blogspot.com/feeds/posts/default

RSS 2.0: http://blogname.blogspot.com/feeds/posts/default?alt=rss

Alternativen?

Da das Problem nun schon etliche Jahre existiert und laut den beiden verlinkten Problem-Meldungen noch weitere Bugs existieren, hatte ich keinerlei Vertrauen mehr in dieses Modul und begab mich auf die Suche nach Alternativen.

Zunächst fand ich das Modul Aggregation Block, welches eine Ergänzung zu dem Modul Aggregation ist. Diese Kombination fühlte sich jedoch nicht wirklich gelungen an, da ich möglichst flexibel bei der späteren Ausgabe der Daten sein wollte.

Als nächstes fand ich das Modul Feeds, welches zur Installation noch die API-Module Chaos tool suite und Job Scheduler benötigt. Zwei dieser drei Module sind für Drupal 6 leider noch im Beta-Stadium, was mir etwas Unbehagen bereitet. Dafür bin ich bei der Ausgabe jedoch extrem flexibel, da jeder Beitrag als eigener Node importiert wird und somit eine Ausgabe des gewünschten 5er Blocks problemlos mit Views möglich ist.

Fazit

Das Modul Feeds legt die beiden neuen Node-Typen Newsfeed und Feed item an und beginnt sofort mit einem Import aller Beiträge, wenn man einen neuen Newsfeed einträgt. Standardmäßig haben die neuen Nodes keinen Autor, was ich etwas ungünstig finde. Dies lässt sich jedoch schnell im Admin-Bereich unter Strukturierung -> Feed importers -> Feed regeln. Man muss lediglich die normalen Einstellungen übersteuern und kann dann unter Processor -> Einstellungen einen Autoren festlegen.

Neben dieser kleinen Unzulänglichkeit der Default-Einstellungen scheint mir das Modul durch die Unterteilung in Fetcher (Daten-Download), Parser (Interpretation der Daten) und Processor (Speicherung der Daten, beispielsweise in Nodes) extrem mächtig zu sein.

Hallo! Bist du neu hier? Dann abonniere doch den RSS-Feed dieses nicht mehr ganz so stillen Örtchens, um über meine geistigen Ergüsse auf dem Laufenden zu bleiben. Alternativ besteht auch die Möglichkeit, sich von FeedBurner per E-Mail über meine Ausscheidungen benachrichtigen zu lassen.

Kommentare (2)

Re: Drupal: Methoden der Feed-Aggregation

Kann ich auch via Feeds, feeds anzeigen aber nicht via node speichern. Mir geht es nur um das anzeigen von Titel & Datum, nichts speichern

Re: Drupal: Methoden der Feed-Aggregation

Tut mir leid, soweit ich mich erinnere habe ich bei meiner Recherche keine Lösung gefunden, die keine Speicherung als Node oder in einer eigenen DB-Tabelle vorgenommen hat.

Kommentar hinzufügen

(If you're a human, don't change the following field)
Your first name.
Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
Der Inhalt dieses Feldes wird öffentlich zugänglich angezeigt, aber als nofollow markiert.
Hinweis

Kommentare beleben den Blog! Ich freue mich über jeden Kommentar. Du kannst hier offen Deine Meinung zum Artikel sagen, aber bitte beachte die Netiquette und vermeide es andere zu beleidigen.

Bitte unterlasst es die Kommentare zu SEO-Zwecken zu missbrauchen. Kommentare mit Links, die nicht zu Blogs führen (oder zu Blogs mit Grauzonen-Themen) und/oder Keywords als Namen verwenden und/oder Links im Kommentarbereich enthalten, sind nicht erwünscht!

Möchtest Du mir einen Blog-Artikel schmackhaft machen, dann schreib die URL ohne Link-Tag und ohne http(s):// in den Kommentarbereich und ich werde diesen bei Gefallen verlinken.

Die ersten vier Kommentare (mit den gleichen Daten bei Name, E-Mail und Blog) landen vor der Veröffentlichung in meiner Freigabe-Warteschlange und ich behalte mir das Recht vor, Kommentare entsprechend dieser Regeln anzupassen oder zu löschen!