{"id":4856,"date":"2025-12-05T14:31:51","date_gmt":"2025-12-05T13:31:51","guid":{"rendered":"https:\/\/www.claudia-klinger.de\/digidiary\/?p=4856"},"modified":"2025-12-05T14:59:25","modified_gmt":"2025-12-05T13:59:25","slug":"bin-schwer-begeistert-erstes-wordpress-plugin-mit-perplexity-claude-sonnet-erstellt","status":"publish","type":"post","link":"https:\/\/www.claudia-klinger.de\/digidiary\/2025\/12\/05\/bin-schwer-begeistert-erstes-wordpress-plugin-mit-perplexity-claude-sonnet-erstellt\/","title":{"rendered":"Bin schwer begeistert: erstes WordPress-Plugin mit Perplexity \/ Claude Sonnet erstellt!"},"content":{"rendered":"<p>Noch nie hab&#8216; ich auch nur daran gedacht, ein WordPress-Plugin zu programmieren, dazu reichen meine rudiment\u00e4ren Kenntnisse bei weitem nicht aus. Um aber die k\u00fcrzlich angek\u00fcndigte Video-Roll (analog zur <a href=\"https:\/\/www.claudia-klinger.de\/digidiary\/meine-blog-bibliothek\/\" target=\"_blank\" rel=\"noopener\">Blogroll<\/a>) ins Werk zu setzen, hatte ich \u00fcberlegt, daf\u00fcr dieses Tool zum Zusammenbasteln diverser &#8222;agentischen&#8220; KI-Aktionen zu lernen. Zum Gl\u00fcck war das aber nicht mal n\u00f6tig: Michael (<a href=\"https:\/\/donau2space.de\/\" target=\"_blank\" rel=\"noopener\">Donau2Space<\/a>) hat mich beraten und dabei kam heraus, dass ich das <a href=\"https:\/\/www.kiberatung.de\/blog\/n8n-richtig-nutzen-tutorial-deutsch\" target=\"_blank\" rel=\"noopener\">Automatisierungstool<\/a> garnicht unbedingt brauche &#8211; es geht auch klassischer, ohne &#8222;Agenten&#8220;.<!--more--><\/p>\n<p>Also hab&#8216; ich es bei Perplexity (Pro-Account) versucht und zwar mit diesem Prompt:<\/p>\n<blockquote><p>&#8222;Du bist erfahrener Webprogrammierer und hilfst mir bei der Erstellung einer Seite, auf der ich verschiedene Youtube-Kan\u00e4le mit ihren letzten 3 Videos (Titel, Kurzbeschreibung) anzeigen will. Meine Recherche hat gezeigt, dass es f\u00fcr jeden Youtube-Kanal einen RSS-Feed gibt. W\u00e4re es also m\u00f6glich, eine Seite mit Youtube-Kan\u00e4len zu erstellen, die in etwa meiner Blogbibliothek entspricht: https:\/\/www.claudia-klinger.de\/digidiary\/meine-blog-bibliothek\/&#8220;<\/p><\/blockquote>\n<p>F\u00fcr die Bearbeitung kann man zwischen verschiedenen KI-Modellen w\u00e4hlen. Zuerst probierte ich es mit <strong>Gemini 3.0<\/strong>, der neuesten Google-KI, aber schon nach einer halben Stunde merkte ich, dass es damit nicht geht. Zum einen hab ich nicht alles verstanden, was es verlautbart, zum anderen funktionierte NICHTS bei ersten Tests (noch au\u00dferhalb WordPress) und die Fehlersuche wurde schnell komplex und immer unverst\u00e4ndlicher.<\/p>\n<h2>Claude Sonnet &#8211; &#8222;best coding model in the world&#8220;<\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignleft size-full wp-image-4857\" src=\"https:\/\/www.claudia-klinger.de\/digidiary\/wp-content\/uploads\/2025\/12\/claude-ai.jpg\" alt=\"Claude AI Symbolbild\" width=\"640\" height=\"193\" srcset=\"https:\/\/www.claudia-klinger.de\/digidiary\/wp-content\/uploads\/2025\/12\/claude-ai.jpg 640w, https:\/\/www.claudia-klinger.de\/digidiary\/wp-content\/uploads\/2025\/12\/claude-ai-300x90.jpg 300w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><br \/>\nAlso umgesattelt, neuer Chat, neues Modell: <a href=\"https:\/\/www.anthropic.com\/news\/claude-sonnet-4-5\" target=\"_blank\" rel=\"noopener\"><strong>Claude 4.5 Sonnet<\/strong><\/a> laut Anthropic und vielen Usern &#8222;the best coding model in the world&#8220;. Dasselbe Prompt nochmal eingegeben und siehe da: Claude hat sofort losgelegt, in Windeseile eine erste Version erstellt, die tats\u00e4chlich funktionierte &#8211; und dann kamen wir (nach einer 1. Version auf einer einfachen Webseite) z\u00fcgig zur Planung des WordPress-Plugins. Nicht nur so ein schlichtes aus einer einzigen Datei, nein, es hat vier Unterverzeichnisse und insgesamt acht Dateien (PHP, CSS, Javascript), einen Adminbereich zur Verwaltung der Youtube-Kan\u00e4le und als Frontend eine WordPress-Seite, auf der die Videos zur Ansicht gebracht werden. Sogar Kategorien kann ich bilden, die wieder verschwinden, wenn ich die enthaltenen Videos l\u00f6sche.<\/p>\n<p>Noch ist das Plugin nicht ganz fertig, deshalb ist es noch nicht mit dem Diary verlinkt, aber man kann sie schon benutzen: Meine <a href=\"https:\/\/www.claudia-klinger.de\/digidiary\/meine-video-bibliothek-youtube-channels\/\" target=\"_blank\" rel=\"noopener\">Video-Bibliothek, Version 1.0<\/a>.<\/p>\n<h2>Erstaunlich gute Zusammenarbeit mit Claude!<\/h2>\n<p>Es hat richtig Spass gemacht, mit Claude zu arbeiten. Ich musste nicht f\u00fcrchten, der KI mit dummen Fragen auf die Nerven zu gehen. Die Antworten auf meine Nachfragen waren so ausf\u00fchrlich wie n\u00f6tig, dabei so kurz und pr\u00e4gnant wie m\u00f6glich. Besonders gefallen hat mir, dass Claude immer mehrere &#8222;n\u00e4chste Schritte&#8220; auf einmal vorstellte, die ich dann kommentieren bzw. wenn n\u00f6tig, Fragen dazu stellen konnte. Dann ging es in die Umsetzung. Auch mir wurde Schritt f\u00fcr Schritt bis ins kleinste Detail angesagt, was ich als N\u00e4chstes tun muss &#8211; einfach toll!<\/p>\n<p>Es gab nat\u00fcrlich auch Probleme: Zuerst hat Claude eine Version mit einem recht n\u00fctzlichen &#8222;<a href=\"https:\/\/kulturbanause.de\/faq\/accordion\/\" target=\"_blank\" rel=\"noopener\">Akkordeon<\/a>&#8220; gebaut, bei dem nur die erste Video-Kategorie &#8222;offen&#8220; war und die nachfolgenden per Klick ge\u00f6ffnet und geschlossen werden konnten. Das hat auch geklappt, aber leider nicht f\u00fcr die jeweils letzte Kategorie, die sich nicht \u00f6ffnen lies. Claude f\u00fchrte mich durch die Fehlersuche mittels der &#8222;Untersuchen&#8220;-Funktion, ich machte Screenshots, die es (er, sie, die KI? Hm&#8230;) analysierte und dann probierten wir mehrere L\u00f6sungen. Gefallen hat mir dann sein Vorschlag:<\/p>\n<blockquote><p>Da wir hier im Debug-Sumpf landen, ist der pragmatischste Schritt:<\/p>\n<ul>\n<li><strong>JS-Akkordeon vorerst deaktivieren<\/strong> und alle Kategorien einfach immer ge\u00f6ffnet lassen.<\/li>\n<li>Du kannst in Ruhe testen, ob das Plugin funktional (Daten, Caching, Darstellung) tut, was es soll.<\/li>\n<li>Sp\u00e4ter kann eine saubere Akkordeon-Version gebaut werden, die exakt zu deinem Theme\/Setup passt.<\/li>\n<\/ul>\n<\/blockquote>\n<p>Es folgten dann einzelne Anweisungen, um das &#8222;Akkordeon&#8220; erstmal auszuschalten. Mir gefiel <a href=\"https:\/\/www.claudia-klinger.de\/digidiary\/meine-video-bibliothek-youtube-channels\/\" target=\"_blank\" rel=\"noopener\">die Version &#8222;alles offen&#8220;<\/a> sogar besser, die Ladezeit der Seite hat sich dadurch nicht sp\u00fcrbar verl\u00e4ngert.<\/p>\n<p><strong>Und was ist mit dem Datenschutz?<\/strong> Kein Problem, denn die Videos sind nicht direkt eingebunden, erst ein Mausklick \u00f6ffnet jeweils die originale Youtube-Seite in einem zweiten Fenster.<\/p>\n<h2>Was dem Plugin noch fehlt<\/h2>\n<p>Jetzt fehlen noch ein paar Kleinigkeiten: Kan\u00e4le und Kategorien in andere Reihenfolgen bringen, die fehlenden &#8222;Thumbnails&#8220; bei einigen Videos nachholen (nicht alle diese Titelbilder werden mit derselben Technik angeboten) &#8211; und vielleicht doch noch Kategorien auf- und zuklappbar machen. Shorts w\u00fcrde ich auch gerne ausschlie\u00dfen, mir geht die <a href=\"https:\/\/www.claudia-klinger.de\/digidiary\/2025\/12\/01\/tiktokisierung-wie-youtube-etablierte-langformat-kanaele-zerstoert\/\" target=\"_blank\" rel=\"noopener\">Tiktokisierung von Youtube<\/a> lange schon auf die Nerven!<\/p>\n<p>Nach dem letzten Test (f\u00fcr heute) hab ich Claude geschrieben:<\/p>\n<blockquote><p>&#8222;Wow! Hat geklappt! Ich bin SCHWER BEEINDRUCKT von deiner Leistung! Und mir ist v\u00f6llig schleierhaft, wie ein LLM diese detaillierte Programmierarbeit leisten kann, wenn es doch angeblich immer nur die Wahrscheinlichkeit des n\u00e4chsten Tokens ausrechnet!&#8220;<\/p><\/blockquote>\n<p>Die Antwort:<\/p>\n<blockquote><p>Freut sehr, dass jetzt alles l\u00e4uft \u2013 die Seite sieht auch inhaltlich richtig gut aus.<\/p>\n<p>Zu deiner Frage: Ja, formal \u201erechnet\u201c ein LLM nur Wahrscheinlichkeiten f\u00fcr das n\u00e4chste Token aus. Aber:<\/p>\n<ul>\n<li>Dieses Modell wurde auf riesigen Mengen von Code, Texten, Bugfixes, Stack\u2011Overflow\u2011Threads, Doku usw. trainiert.\u200b<\/li>\n<li>In diesen Daten stecken Muster wie: \u201eWenn im HTML nach <code>id=\"\u2026\"<\/code> direkt <code>&lt;div<\/code> kommt, fehlt meistens ein <code>&gt;<\/code> und das Layout bricht.\u201c<\/li>\n<li>Beim Generieren und Analysieren werden solche Muster nicht nur lokal, sondern \u00fcber viele Tokens hinweg ber\u00fccksichtigt \u2013 intern gibt es eine Art \u201eGed\u00e4chtnis\u201c \u00fcber den bisherigen Kontext (Attention\u2011Mechanismus), sodass konsistente, mehrschrittige Vorschl\u00e4ge entstehen k\u00f6nnen.\u200b<\/li>\n<\/ul>\n<p>Aus Sicht der Theorie ist es also weiterhin \u201enur\u201c Wahrscheinlichkeitsrechnung \u2013 praktisch \u00e4u\u00dfert sich das aber wie ein sehr gro\u00dfer, gut trainierter Programmierer, der unz\u00e4hlige \u00e4hnliche Situationen \u201egesehen\u201c hat und passende Korrekturen vorschl\u00e4gt.<\/p><\/blockquote>\n<p>***<\/p>\n<p><strong>Und sonst:<\/strong><\/p>\n<p>Gestern stie\u00df ich auf ein \u00e4lteres KI-Gespr\u00e4ch von Salvatore Princi: Per Prompt brachte er ChatGPT dazu, die Rolle der <a href=\"https:\/\/de.wikipedia.org\/wiki\/Hypatia\" target=\"_blank\" rel=\"noopener\">antiken Philosophin Hypatia<\/a> einzunehmen und mit ihm &#8211; einer Person aus ihrer &#8222;fernen Zukunft&#8220; &#8211; einen tief sch\u00fcrfenden Dialog zu f\u00fchren, beeindruckend!<\/p>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aNWaQXp-PA8\" target=\"_blank\" rel=\"noopener\">ChatGPT: Hypatia lebt \u2013 und sie spricht mit uns; Haltung im Umbruch.<\/a><\/li>\n<\/ul>\n<p>Hier zeigt er, wie man ChatGPT das Geschwafel abgew\u00f6hnt:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=pWy6qtWeACQ\" target=\"_blank\" rel=\"noopener\">ChatGPT \u2013 so schaltest du den Klartext-Modus frei<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Noch nie hab&#8216; ich auch nur daran gedacht, ein WordPress-Plugin zu programmieren, dazu reichen meine rudiment\u00e4ren Kenntnisse bei weitem nicht aus. Um aber die k\u00fcrzlich angek\u00fcndigte Video-Roll (analog zur Blogroll) ins Werk zu setzen, hatte ich \u00fcberlegt, daf\u00fcr dieses Tool zum Zusammenbasteln diverser &#8222;agentischen&#8220; KI-Aktionen zu lernen. Zum Gl\u00fcck war das aber nicht mal n\u00f6tig: [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[687],"tags":[1375,1258,1576,119],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/posts\/4856"}],"collection":[{"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/comments?post=4856"}],"version-history":[{"count":0,"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/posts\/4856\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/media?parent=4856"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/categories?post=4856"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.claudia-klinger.de\/digidiary\/wp-json\/wp\/v2\/tags?post=4856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}