Orte von WordPress-Posts dynamisch mit Leaflet.js posten

Ich habe endlich eine Methode gefunden, wie WordPress-Posts automatische einer Leaflet-Karte hinzugefügt werden kann. Wer auf das CMS WordPress setzt, kann damit einen Schritt Richtung structured journalism tun.

Die Lösung basiert auf einem Code von Alicia Duffy und Ben C. Bond, die Entwickler bei der Tierschutzorganisation PETA sind und so verschiedene US-Universitäten auf einer Karte darstellen.

Über einen Custom Post Type und Taxonomien werden die Ort festgelegt, dann über geojson exportiert und in Leaflet eingelesen. Über einen Shortcode kann eine Karte überall leicht eingebunden werden.

Die Komponenten des Codes

  • Die Leaflet-Bibliothek und die dazu notwendigen Dateien (JavaScript und CSS).
  • Die Geocoder-Funktion von Google, die sich über JavaScript-Datei einbinden lässt. Orte, Postleitzahlen und Adressen werden so automatisch in Koordinaten umgewandelt. Dazu notwendig: Eine Google Maps API v3.
  • Eine Geojson-Datei, die sich jeden Tag updated und ggf. neue Standorte der Karte hinzufügt.
  • Die Icons von Fontawesome für die Marker.

Den Code gibt es bei Github: Generic Map.

Das CMS ist tot, es lebe das CMS!

WordPress, Drupal und Joomla können eines richtig gut: homogenen Inhalt darstellen, in einer Datenbank ablegen und auffindbar machen. Doch sobald die Darstellung komplexer wird oder trendy Sachen, wie Parallax Scrolling miteingebaut werden, stoßen die gängen CMS an ihre Grenzen. Nicht von ungefähr empfiehlt Aaron Phielhofer von der New York Times, bei Projekten, die sich unter dem Buzzword „Digital Storytelling“ zusammenfassen lassen, Content-Management-Systeme zu vergessen. Den Rat haben wir bei der Lautschrift verfolgt, als wir „In grauer Vorzeit“ erstellt haben: Eine Geschichte aus den Anfangsjahren der Uni Regensburg im Snowfall-Stil.

Dort ist alles hard-gecoded, d.h. der Text wurde dort wirklich in das HTML-Gerüst eingearbeitet und wurde nicht über eine Datenbankabfrage o.ä. eingearbeitet. Das ist nervig und für wiederkehrende Projekte sehr unhandlich – gerade wenn man davon ausgeht, dass viele Redakteure HTML nicht fließend können.

Daraus folgt: Früher oder später muss man doch auf ein wie auch immer geartetes CMS zurück kommen, um verschiedenen Geschichten im Backend einen Rahmen zu geben. Die üblichen Verdächtigen – WordPress, Drupal Joomla – sind dabei oft zu unflexibel, um wirklich geilen Scheiss zu machen. Doch es scheint Abhilfe zu geben:

Open News, eine Platform von Mozilla, die sich mit Datenjournalismus, digital Storytelling und ganz allgemein Onlinejournalismus beschäftigt, stellt vier Systeme vor, die in Redaktionen entwickelt wurden – denen man fehlende Praxistauglichkeit also mal per se nicht absprechen kann:

With the growing number of nerds in the newsroom, it’s only fitting that new technology patterns for building news applications have emerged. The latest rage? Ultralight content management systems.

Am vielversprechensten klingt Tarbell: Gespeichert wird in der Cloud, vorwiegend mit Google Spreadsheet. Vorteil: Auch weniger code-affine Leute können mit Tabellenverarbeitungsprogrammen umgehen, auch um ein Backup braucht man sich nicht mehr groß kümmern. Gehostet wird gerne bei Amazon. Vorteil davon: Dort wird flexibel auf die Zugriffszahlen angepasst. Dennoch bleibt ein fader Beigeschmack: Soll man wirklich den ganzen Content bei Google speichern?

Aber abschreiben sollte man WordPress und Konsorten nicht. Nur einen Klick weiter berichtet Joey Marburger von der Washington Post in einer Case Study davon, wie er und seine Kollegen, das Portal „The Grid“ auf WordPress aufgebaut haben:

We made the decision early to use WordPress as the front-end controller because it allowed us to create multiple instances of The Grid simply by created new “posts” in WordPress. (…) Furthermore, we were using WordPress in a very different way than it was designed for. WordPress did not store or distribute the true content of The Grid. It simply contained The Grid itself with the various options set.

Das klingt ganz nach Matt Muellenweg, dem Mitbegründer von WordPress. In seiner jährlichen Rede „State of the Word“ wünschte er sich 2013, dass WordPress zu einem Framework für Web-Applikationen wird.

Theme für Online-Magazin auf WordPress-Basis

Das erste Projekt, bei dem ich mit einer ganz leeren Datei begonnen habe: Die Webseite der Regensburger Studierendenzeitschrift Lautschrift. Ohne ein anderes Theme als Vorlage zu verwenden, konnte ich mein Verständnis von WordPress als Content-Management-System sehr vertiefen. So gibt es auf der Startseite gleich drei Datenbankabfragen: Eine Sache, die es nicht wahrscheinlich nicht so kompliziert gebraucht hätte, aber jetzt schreckt mich im WordPress-Loop nichts mehr.

Als CSS-Framework habe ich Bootstrap der Version 2 verwendet.

Im Frühjahr 2013 habe ich versucht, meine damaligen Vorstellungen eines idealen Online-Magazins umzusetzen: Große Bilder, gute Lesbarkeit, viel Weißraum.