dbDelta() funktioniert nicht

  • Ich fange gerade an, mein erstes WP-Plugin zu schreiben (genauer gesagt um hierfür eine Lösung zu entwickeln). Dazu benötige ich ein paar eigene Datenbanktabellen, die ich in einer Installationsroutine erzeugen und natürlich genauso wiederum in einer Deinstallationsroutine wieder entfernen möchte.

    Hier auf WP.org wird dies bezüglich empfohlen, die Funktion dbDelta($sql) dazu zu verwenden. Das tue ich dann auch, treffe aber auf folgende Probleme:

    1. Installation: Von meinen drei CREATE TABLE-Anfragen wird offenbar nur eine ausgeführt. Jedenfalls sehe ich nach aktivieren meines Plugins nur eine neue Datenbanktabelle per PhpMyAdmin. Die anderen beiden, die eigentlich auch angelegt werden sollten, fehlen.
    2. Deinstallation: Beim Löschen meines Plugins sollten die zuvor angelegten Tabellen eigentlich alle sauber wieder gelöscht werden. Allerdings passiert das nicht. Die Deinstallationsroutine läuft aber definitiv, da wiederum ein per delete_option($str) zu entfernender Konfigurationswert definitiv aus der Datenbank wieder verschwunden ist.

    Hier mein Code (Kommentare zwecks Übersichtlichkeit gelöscht):

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!