WordPress PHP-Kompatibilitätstesting bedeutet, zu überprüfen, ob Ihr Plugin auf jeder Kombination aus PHP- und WordPress-Version, die Sie unterstützen, korrekt funktioniert. Mit einer WordPress-Sandbox auf wp.run können Sie saubere Testinstallationen starten — zum Beispiel PHP 8.4 mit WordPress 6.9 — und dann denselben Smoke-Test wiederholen, ohne lokale Server oder Produktionsrisiko.
Sie können jetzt mit der ersten Prüfung beginnen: Klicken Sie oben auf dieser Seite auf WordPress starten, wählen Sie die PHP- und WordPress-Versionen aus, die Sie testen möchten, und führen Sie das Plugin in einer wegwerfbaren WordPress-Website mit echtem wp-admin-Zugang aus.
Warum WordPress PHP-Kompatibilität eine Matrix benötigt
Ein Plugin kann auf einem Stack bestehen und auf einem anderen scheitern. PHP-Änderungen können veraltete Syntax, strengeres Typverhalten, entfernte Funktionen oder Warnungen aufdecken, die auf einem älteren Runtime nicht aufgetreten sind. WordPress-Änderungen können Editor-Verhalten, Hooks, REST-Endpunkte, Admin-Screens und gebündelte JavaScript-Dateien beeinflussen.
Deshalb reicht eine einzelne „funktioniert auf meinem Rechner”-Prüfung nicht aus. Plugin-Kompatibilitätstesting sollte die Kombinationen abdecken, die Ihre Benutzer tatsächlich verwenden:
| Dimension | Was zu entscheiden | Beispiel |
|---|---|---|
| WordPress-Versionen | Aktuelle, vorherige und nächste unterstützte Version | WordPress 6.9 und 6.8 |
| PHP-Versionen | Ältester unterstützter, Standard-Ziel, neuestes Ziel | PHP 8.1, 8.4, 8.5 |
| Plugin-Zustand | Neuinstallation, Upgrade-Pfad, aktive Abhängigkeiten | Saubere Installation plus WooCommerce |
| Testtiefe | Smoke-Test, Admin-Test, Frontend-Test, Deinstallationstest | Aktivieren, konfigurieren, verwenden, deaktivieren |
Das offizielle WordPress-Core-Handbuch pflegt eine PHP-Kompatibilitätstabelle für WordPress selbst. Behandeln Sie diese als Ihre Basis für Core. Ihre Aufgabe ist es, Ihr Plugin auf diesen Stacks zu testen, da WordPress-Core-Kompatibilität nicht garantiert, dass jedes Plugin oder Theme korrekt funktioniert.
Eine kleine PHP x WordPress-Versionsmatrix aufbauen
Beginnen Sie mit der kleinsten Matrix, die eine echte Freigabefrage beantwortet. Für die meisten Plugin-Teams bedeutet das drei Zeilen vor jeder bedeutenden Veröffentlichung:
- Ältester unterstützter Stack. Dies deckt Syntax- oder API-Nutzung auf, die bei Benutzern bricht, die noch nicht aktualisiert haben.
- Empfohlener aktueller Stack. Dies ist der Stack, den Sie für die meisten neuen Tests und Demos erwarten.
- Neuester Stack. Dies deckt zukunftsorientierte PHP- und WordPress-Änderungen auf, bevor Benutzer sie melden.
Im wp.run-Startmodal werden explizite WordPress- und PHP-Versionsauswahlen unterstützt. Sie können auch Start-URLs verwenden, wenn Sie eine WordPress-Sandbox starten von einem wiederholbaren Test-Link aus möchten, zum Beispiel:
https://wp.run/new?php=8.4&wp=6.9
Für unterstützte Presets fügen Sie den Plugin-Parameter hinzu, um die Umgebung reproduzierbar zu machen:
https://wp.run/new?plugin=woocommerce&php=8.4&wp=6.9
Für Ihre eigenen Plugin-Builds laden Sie das ZIP in wp-admin hoch und notieren den genauen Build in Ihren Notizen. Jede Zeile in Ihrer Matrix sollte einen Stack, eine Plugin-Version, durchgeführte Prüfungen und ein Ergebnis haben.
Plugin-PHP-8.4-Kompatibilität auf wp.run testen
Verwenden Sie diesen Workflow, wenn Sie das PHP-8.4-Verhalten eines Plugins testen müssen, ohne eine lokale Umgebung neu aufzubauen.
- Den Ziel-Stack starten. Klicken Sie auf WordPress starten, wählen Sie PHP 8.4 und die WordPress-Version, die Sie validieren möchten, dann erstellen Sie die Sandbox. wp.run stellt eine temporäre WordPress-Installation mit Admin-Zugangsdaten und einer
*.wprun.site-URL bereit. - Die Umgebung bestätigen. Öffnen Sie wp-admin, dann überprüfen Sie unter Werkzeuge → Site Health → Info die PHP- und WordPress-Versionen, bevor Sie mit dem Testen beginnen.
- Das Plugin installieren oder aktivieren. Laden Sie ein unterstütztes Preset von einem Start-URL-Parameter, oder laden Sie Ihr Plugin-ZIP in wp-admin hoch. Notieren Sie den genauen Plugin-Build in Ihrem Testprotokoll.
- Die Aktivierungsprüfung ausführen. Aktivieren Sie das Plugin und achten Sie auf schwerwiegende Fehler, Admin-Hinweise, fehlende Abhängigkeiten, Redirect-Schleifen und Setup-Assistent-Fehler.
- Die Kernfunktion ausführen. Führen Sie den kleinsten echten Workflow aus, den das Plugin unterstützen soll: ein Formular erstellen, einen Checkout abschließen, einen Block hinzufügen, eine Sitemap generieren, Inhalte importieren oder die geplante Aufgabe auslösen.
- Admin- und Frontend-Oberflächen prüfen. Öffnen Sie den Block-Editor, Plugin-Einstellungen, öffentliche Seitenausgabe, REST-Endpunkte falls relevant und die Browser-Konsole.
- Auf dem nächsten Stack wiederholen. Starten Sie die nächste PHP- oder WordPress-Version und führen Sie dieselbe Checkliste durch. Ändern Sie eine Dimension nach der anderen, wenn Sie einen Fehler isolieren.
Dies gibt Ihnen schnell ein manuelles Kompatibilitätssignal. Es ersetzt keine Unit-Tests, Integrationstests oder statische Analyse, aber es deckt die produktseitigen Fehler auf, die Benutzer tatsächlich in wp-admin und im Frontend sehen.
Statisches Scanning hinzufügen, aber nicht dabei stehen bleiben
Statische Kompatibilitäts-Scanner sind nützlich, weil sie Code-Muster vor der Laufzeit erkennen. Die Learn WordPress-Lektion über das Testen von Produkten auf PHP-Versionskompatibilität behandelt zwei gängige Ansätze: manuelles Testen in einer Ziel-PHP-Umgebung und Scannen mit PHPCompatibility-Regeln über PHP_CodeSniffer.
Verwenden Sie beide Signale zusammen:
- Zuerst statischer Scan. Finden Sie offensichtliche Verwendung entfernter Funktionen, veralteter Signaturen und versionsspezifischer PHP-Syntax.
- Dann Sandbox-Test. Bestätigen Sie, dass das Plugin startet, UI rendert, erwartete Optionen schreibt und seinen echten Workflow auf dem Ziel-Stack abschließt.
- Zuletzt Regressionsnotiz. Notieren Sie, was scheiterte, die genauen PHP/WP/Plugin-Versionen und ob es sich um eine Warnung, einen schwerwiegenden Fehler, eine beschädigte UI oder ein Datenproblem handelt.
Statische Tools können Ihnen sagen, dass eine Codezeile möglicherweise inkompatibel ist. Eine Sandbox sagt Ihnen, ob das Plugin als WordPress-Produkt noch funktioniert.
Was beim WP-Versionstesting zu prüfen ist
WP-Versionstesting dreht sich nicht nur darum, ob das Plugin aktiviert wird. Die teuersten Bugs erscheinen oft nach der Aktivierung, wenn ein Benutzer Inhalte bearbeitet, Einstellungen konfiguriert oder von einer älteren Version aktualisiert.
Prüfen Sie diese Bereiche in jeder Matrix-Zeile:
- Aktivierung und Deaktivierung. Das Plugin sollte sich sauber aktivieren, sauber deaktivieren und die Website nicht in einem fehlerhaften Zustand hinterlassen.
- Upgrade-Pfad. Installieren Sie zuerst die vorherige Plugin-Version, erstellen Sie Beispieldaten, aktualisieren Sie dann auf die neue Plugin-Version und bestätigen Sie, dass Migrationen ausgeführt werden.
- Admin- und Editor-Screens. Öffnen Sie jedes Menü, das das Plugin hinzufügt. Wenn es Blöcke, Shortcodes, Einbettungen, Custom Post Types oder Meta-Boxen berührt, testen Sie den Editor auf jeder WordPress-Version.
- Frontend-Ausgabe. Bestätigen Sie, dass Templates, Shortcodes, Assets, Weiterleitungen, Checkout-Abläufe, Formulare oder Widgets wie erwartet rendert werden.
- REST-, AJAX- und geplante Aufgaben. Senden Sie relevante Endpunktanfragen und prüfen Sie Cron-abhängiges Verhalten, wo das Plugin auf Hintergrundarbeit angewiesen ist.
- Deinstallationshygiene. Deaktivieren und löschen Sie das Plugin in einer wegwerfbaren Sandbox, um zu überprüfen, ob sein Bereinigungsverhalten akzeptabel ist.
Halten Sie diese Checkliste konsistent. Wenn jeder Tester einen neuen Pfad durch wp-admin erfindet, wird Ihre Matrix schwerer zu vergleichen.
Eine praktische Matrix für eine Plugin-Veröffentlichung
Hier ist eine kompakte Matrix für ein Plugin-Team, das eine Veröffentlichung vorbereitet:
| Testzeile | PHP | WordPress | Plugin-Build | Ziel |
|---|---|---|---|---|
| Basis-Support | 8.1 | 6.8 | Release Candidate | Bestätigen, dass der älteste unterstützte Runtime noch funktioniert |
| Aktuelles Ziel | 8.4 | 6.9 | Release Candidate | Bestätigen, dass der Standard-Demo- und Support-Stack funktioniert |
| Neueste Prüfung | 8.5 | 7.0 | Release Candidate | Frühe Probleme finden, bevor Benutzer sie treffen |
| Upgrade-Pfad | 8.4 | 6.9 | Vorherige → Release Candidate | Bestätigen, dass Einstellungen und Daten sauber migrieren |
Verwenden Sie die Matrix als Freigabe-Gate, nicht als nachträgliche Dokumentation. Wenn eine Zeile scheitert, kopieren Sie die genauen Schritte, fügen Sie Debug-Ausgabe oder Screenshots bei und hängen Sie die temporäre Sandbox-URL an, während sie noch aktiv ist.
Häufige Kompatibilitätsfehler, auf die zu achten ist
Die meisten Kompatibilitätsfehler fallen in einige wenige Muster:
- Schwerwiegender Fehler bei der Aktivierung. Meist verursacht durch entfernte PHP-Funktionen, fehlende Klassen, Probleme beim Autoloading von Abhängigkeiten oder Code, der zu früh ausgeführt wird.
- Warnungen, die auf neuerem PHP lautstärker werden. Dynamische Eigenschaften, nullable Argumente, strikte Typisierungsannahmen und veraltete Signaturen können Logs fluten, auch wenn die Seite scheinbar funktioniert.
- Editor-Beschädigungen. Ein Plugin kann im Frontend funktionieren, während seine Block-Editor-Integration auf einer neueren WordPress-Version scheitert.
- AJAX-, REST- oder Upgrade-Fehler. Nonce-Handling, Routenregistrierung, gespeicherte Optionen oder benutzerdefinierte Tabellen können schwache Annahmen aufdecken.
- Abhängigkeitskonflikte. Zwei Plugins können inkompatible Versionen einer gemeinsamen PHP-Bibliothek oder eines JavaScript-Pakets mitliefern.
Wenn eine Zeile scheitert, springen Sie nicht direkt zu „PHP ist inkompatibel.” Führen Sie dasselbe Plugin auf derselben WordPress-Version mit der vorherigen PHP-Version erneut aus, dann ändern Sie WordPress, während Sie PHP stabil halten. Das Isolieren einer Dimension ist der Weg, um die echte Fehlerquelle zu finden.
Wo die Sandbox passt
Eine wegwerfbare WordPress-Sandbox ist ideal für Kompatibilitäts-Smoke-Tests, Release-Candidate-Prüfungen, Support-Reproduktion, Demo-Links und schnelle Plugin-QA. Verwenden Sie Staging oder lokale Entwicklung, wenn der Test von einer produktionsähnlichen Datenbank, persistenten Dateien, benutzerdefinierter Serverkonfiguration oder langem Debugging abhängt.
Der praktische Workflow ist geschichtet: Code scannen, automatisierte Tests ausführen, wp.run-Sandboxes für produktseitige PHP- und WordPress-Versionsprüfungen verwenden, dann zu Staging wechseln, nur wenn Sie eine spezifische Website verifizieren müssen.
FAQ
Was ist WordPress PHP-Kompatibilität?
WordPress PHP-Kompatibilität ist die Fähigkeit von WordPress Core, einem Plugin oder einem Theme, auf einer bestimmten PHP-Version korrekt zu laufen. Für Plugins muss die Kompatibilität in einer echten WordPress-Umgebung getestet werden, da das Plugin von WordPress-Hooks, Admin-Screens, Datenbankverhalten und anderem aktiven Code abhängt.
Wie teste ich ein Plugin auf PHP 8.4?
Starten Sie eine wp.run-Sandbox mit PHP 8.4, bestätigen Sie die PHP-Version in Site Health, installieren Sie das Plugin, führen Sie dann Aktivierungs-, Admin-, Editor-, Frontend-, REST/AJAX- und Deinstallationsprüfungen durch. Wiederholen Sie dieselbe Checkliste auf der vorherigen PHP-Version, wenn Sie einen PHP-spezifischen Fehler isolieren müssen.
Bedeutet WordPress-Core-Kompatibilität, dass mein Plugin ebenfalls kompatibel ist?
Nein. WordPress Core kann mit einer PHP-Version kompatibel sein, während ein Plugin noch wegen seines eigenen Codes, seiner Abhängigkeiten, Admin-UI oder Upgrade-Logik scheitert. Verwenden Sie das WordPress-Core-Kompatibilitätschart als Basis, dann testen Sie das Plugin separat.
Wie viele PHP- und WordPress-Kombinationen sollte ich testen?
Testen Sie den ältesten Stack, den Sie unterstützen, den aktuellen Standard-Stack, den Sie für die meisten Benutzer erwarten, und den neuesten Stack, auf den Sie sich vorbereiten möchten. Fügen Sie Zeilen für Upgrade-Pfade, Abhängigkeiten oder kundenbetriebene Umgebungen hinzu, wenn diese relevant sind.
Kompatibilitätstesting wiederholbar machen
Der beste Kompatibilitätsprozess ist langweilig: eine Matrix, eine Checkliste, ein Ergebnisprotokoll, für jeden Release Candidate wiederholt. wp.run gibt Ihnen die schnelle Umgebungsschicht für diesen Prozess: sauberes WordPress, wählbare PHP- und WordPress-Versionen, generierter Admin-Zugang und temporäre Sandboxes, die Sie verwerfen können, wenn jede Zeile abgeschlossen ist.