{"id":1583,"date":"2023-03-12T17:51:27","date_gmt":"2023-03-12T16:51:27","guid":{"rendered":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/?p=1583"},"modified":"2023-03-12T18:25:57","modified_gmt":"2023-03-12T17:25:57","slug":"stichwortverzeichnis-frisch-gewagt-in-php-und-wordpress","status":"publish","type":"post","link":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/2023\/03\/12\/stichwortverzeichnis-frisch-gewagt-in-php-und-wordpress\/","title":{"rendered":"Stichwortverzeichnis: frisch gewagt in PHP und WordPress"},"content":{"rendered":"\n<p>Ich hab mich so \u00fcber die unzuverl\u00e4ssige Asc()-Funktion in Access ge\u00e4rgert, jetzt hab ich mir die ganze Mechanik der Stichwort-Extraktion nochmal in PHP angetan, das funktioniert wesentlich zuverl\u00e4ssiger und erspart mir ausserdem den st\u00e4ndigen Datenimport\/Export.<\/p>\n\n\n\n<p>Praktisch gel\u00f6st wird die ganze Sache erst einmal \u00fcber einen Shortcode, da musste ich jetzt schon nochmal \u00fcberlegen wie das genau ging, ist lange her. Und wie ich so in $wpdb-Nostalgie schwelge, ist mir ein anderer Dreh eingefallen, wie ich die Stichw\u00f6rterliste aus den Post-Titeln extrahieren kann, n\u00e4mlich v\u00f6llig dynamisch mithilfe von Arrays.  Bei einigen Hundert W\u00f6rtern geht das noch sehr locker, da brauche ich mir wegen der Performance noch keine Gedanken zu machen&#8230;. dachte ich zuerst mal.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Nachdem mir aber ein paar mal hintereinander der lokale Webserver abgeraucht ist bei dem Versuch, eine dynamische Stichwortliste mit Links zu erzeugen, habe ich mich f\u00fcr eine Hybridl\u00f6sung entschieden. Ich werde die Erzeugung der Quelldaten f\u00fcr das Stichwortverzeichnis doch \u00fcber eine Tabelle abwickeln, das ist der erste Schritt. Daf\u00fcr baue ich mir nach Erzeugung und Bereinigung des Arrays eine kleine MySQL-Abfrage, die die vorhandene Tabelle &#8222;quelle&#8220; zuerst ausleert und dann neu bef\u00fcllt. Das w\u00e4re nat\u00fcrlich nett, wenn man das \u00fcber eine Art Benutzerf\u00fchrung abwickeln k\u00f6nnte, aber ich schau erstmal dass ich es \u00fcberhaupt zum Laufen kriege. Dann kann ich meinen bereits vorhandenen Shortcode zur Erzeugung des Stichwortverzeichnisses aus der Tabelle quelle wiederverwenden, der ist n\u00e4mlich schon fertig und funkt einwandfrei. Ich hab da so eine Idee, dass man die Datenbasis immer wieder mal neu erstellen k\u00f6nnen soll, wenn zum Beispiel viele Beitr\u00e4ge dazugekommen sind.  Da es f\u00fcr die Erzeugung des Stichwortverzeichnisses aus einer statischen Tabelle keinerlei gro\u00dfartige PHP-Konstrukte braucht, sollte die Performance und Stabilit\u00e4t auch deutlich verbessert werden.  Dann hab ich auch noch so eine Idee mit  Positiv\/Negativliste, mein Plugin k\u00f6nnte lernf\u00e4hig werden, da gehts schon h\u00fcbsch in Richtung AI. Morgen ist auch noch ein Tag&#8230;<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ich hab mich so \u00fcber die unzuverl\u00e4ssige Asc()-Funktion in Access ge\u00e4rgert, jetzt hab ich mir die ganze Mechanik der Stichwort-Extraktion nochmal in PHP angetan, das funktioniert wesentlich zuverl\u00e4ssiger und erspart mir ausserdem den st\u00e4ndigen Datenimport\/Export. Praktisch gel\u00f6st wird die ganze Sache erst einmal \u00fcber einen Shortcode, da musste ich jetzt schon nochmal \u00fcberlegen wie das [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1583"}],"collection":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/comments?post=1583"}],"version-history":[{"count":4,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1583\/revisions"}],"predecessor-version":[{"id":1588,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1583\/revisions\/1588"}],"wp:attachment":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/media?parent=1583"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/categories?post=1583"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/tags?post=1583"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}