So bauen wir uns ein perfektes Word­press-Plug-in

Es tut mir leid, aber ich muss euch erneut mit Nerdkram belästigen. Es geht schon wieder darum, wie man mittels KI an einer Word­press-Website herumbastelt.

Aber es ist auch einfach grossartig, wie wir heute in der Lage sind,  mittels künstlicher Intelligenz eine halbgare Lösung in eine zu verwandeln, die exakt zu unseren Bedürfnissen passt. Ich habe dafür ein exemplarisches Beispiel:

In meinem Artikelarchiv gibt es seit vier Jahren die Rubrik Werkschau: Sie liefert eine chronologische Übersicht meiner Artikel, Blogposts und Radiosendungen. Die Idee stammt aus jener Zeit, als das Internet noch nicht von grossen Plattformen dominiert wurde. Die neigen bekanntlich dazu, Inhalte in Silos einzusperren. Demgegenüber gab es Ende der Nullerjahre die Idee des «Lifestreams»: Die Inhalte, die wir an diversen Stellen im Netz hinterlassen, werden zu einem einzigen Strom zusammengeführt, der unsere Online-Aktivitäten abbildet. Dafür gab es diverse Methoden und Anbieter und phasenweise auch den Begriff Mashup. Ein universeller Ansatz waren die Yahoo-Pipes, mit denen sich solche Feeds sammeln und verarbeiten liessen.

Das perfekte Plug-in ab Stange gibt es nicht

Nun, alle diese auf freien Datenfluss ausgelegten Projekte sind verschwunden. Immerhin RSS gibt es noch, und diese Methode benutzte ich für meine Werkschau. Wie ausgeführt, kam für meine Werkschau das Word­press-Plug-in WP RSS Aggregator zum Zug. Das holte die Feeds von Clickomania, Nerdfunk und meinem Artikelarchiv und fügte sie zu einer Liste zusammen.

Vorher: So sah die vom kommerziellen Plug-in generierte Werkschau-Liste aus.Nachher: So präsentiert sich der massgeschneiderte Feed auf der «Werkschau»-Seite.

Das führt zum Ziel, aber befriedigend war diese Lösung nie:

  • Die Gratisvariante des Plug-ins übernimmt nur den Titel. Fürs Verständnis ist der Textauszug (das Excerpt) unverzichtbar.
  • WP RSS Aggregator ist ein dicker Brocken: Das Plug-in ist in komprimierter Form über sechs MB gross. Entsprechend bläht es die Word­press-Installation auf.
  • Es ist umständlich in der Benutzung und will mich an allen Ecken und Enden dazu bringen, die Bezahlversion zu abonnieren. Die kostet in der günstigsten Variante 99 US-Dollar pro Jahr. Man kann bis zu 269 Dollar pro Jahr für dieses Produkt bezahlen.

Geht das nicht einfacher? Ich frage Gemini und erhalte sofort die Auskunft, dass das für meine Zwecke sehr wohl der Fall sei:

Um eine performante, chronologische Liste ohne schweres Plug-in zu erstellen, empfehle ich den Wechsel von RSS auf die Word­press REST-API, da alle deine Quellen WP-Seiten sind, und die Speicherung der Daten in einer lokalen Cache-Datenbank (Custom Post Type).

Tausendmal kleiner, zehnmal besser

Auf die scheue Frage, ob mir Gemini diesen Code erstellen könnte, erhalte ich ein enthusiastisches Ja. Googles KI fabriziert mir den Code, der nicht sechs Megabyte, sondern in der ersten Version nur gut neun KB gross ist. Ich verfrachte ihn per FTP auf meinen Server, aktiviere das Plug-in und erhalte eine massgeschneiderte Werkschau, die bereits in der ersten Version viel besser als die bisherige Implementation ist, die auf einem kommerziellen Produkt basiert, das nicht wirklich zu meinem Anwendungsfall passt.

In ein paar Schritten und einer knappen Stunde Arbeit baue ich (als Chef und Instruktor der KI) dieses Plug-in zu einer brauchbaren ersten Version aus:

  • Über einen Shortcode wird der Inhalt auf der Werkschau-Seite angezeigt.
  • Gemini passt den Code in zwei Anläufen für die Nerdfunk-Sendungen an: Dort werden keine normalen Beiträge ausgespielt, weil das Podlove-Plug-in für Podcast-Episoden ausgelegt ist und diese speziell mit diversen Zusatzinformationen verpackt.
  • Auch die Integration der Zusammenfassungen (Excerpts) ist ein Klacks. Da beim Nerdfunk die nicht vorhanden sind, holt mir der Code den Anfang der Blogposts in die Übersicht.

Auf die Gefahr hin, mich zu wiederholen: Das ist grossartig.

Das selbst bzw. von KI gebastelte Plug-in hat auch ein (simples) Backend.

Es gibt einige Dinge, die für eine Weiterentwicklung anstehen, bzw. die ich seit der ersten Version dieses Blogposts bereits in Angriff genommen habe:

  • Ich will nicht nur die letzten Handvoll Beiträge berücksichtigen, sondern mindestens die letzten paar Jahre.
  • Der Sync soll einmal pro Tag automatisch ausgeführt werden.
  • Im Excerpt bzw. Lead sollten allfällige HTML-Tags ausgefiltert werden.
  • Es hätte gern einen konsolidierten RSS-Feed und man könnte über eine globale Suchfunktion über alle Beiträge hinweg nachdenken.

Natürlich darf die Sicherheit nicht vernachlässigt werden. Zu diesem Zweck gab ich Claude den Auftrag, den Code von Gemini strikt in Bezug auf die Robustheit und Sicherheit des Codes zu analysieren. Und siehe da: Er fand einige Dinge, die gleich korrigiert wurden.

Unter dem Strich sind das schlechte Nachrichten für die Hersteller von Plug-ins wie WP RSS Aggregator. Für uns Teilzeit-Webmaster und Hobby-Entwickler sind es grossartige Neuigkeiten. Und Nutzniesserinnen und Nutzniesser dürften schliesslich die Menschen sein, die sich noch im freien Web bewegen: Dank der Code-Fähigkeiten von Gemini, Claude, ChatGPT und Co. werde  Websites nicht nur benutzerfreundlicher, sondern schlanker und (vielleicht) sicherer.

Beitragsbild: Und plötzlich wachsen die Webmaster-Ambitionen in den Himmel (Ben Allan, Unsplash-Lizenz).

#Gemini #Programmieren #RSS #VibeCoding #Wordpress