WordPress Theme nach PHP-Wechsel kaputt: Ursachen und Lösungen
Wenn ein WordPress Theme nach einem PHP-Wechsel kaputt ist, äußert sich das oft durch eine leere Seite, Fehlermeldungen, verschwundene Layouts oder nicht mehr funktionierende Funktionen. Die Ursache liegt nicht immer allein im Theme: Auch Plugins, individuelle Anpassungen, veraltete PHP-Syntax, inkompatible Servereinstellungen oder ein unvollständig getestetes Update können beteiligt sein. In diesem Leitfaden erfährst Du, wie Du den Fehler systematisch eingrenzt und Deine Website möglichst sicher wiederherstellst.
Passende WordPress Hilfe zum Thema
Was bedeutet „WordPress Theme nach PHP-Wechsel kaputt“?
WordPress selbst besteht aus PHP-Code. Auch Themes und viele Plugins verwenden PHP, um Seiteninhalte zu verarbeiten, Daten aus der WordPress-Datenbank abzurufen und HTML an den Browser auszugeben. Wird die PHP-Version auf dem Hosting geändert, kann sich das Verhalten dieses Codes verändern.
Ein Wechsel von einer älteren auf eine neuere PHP-Version ist grundsätzlich ein sinnvoller Schritt. Neuere Versionen schließen Sicherheitslücken, verbessern die technische Basis und entfernen teilweise veraltete Funktionen. Gleichzeitig können ältere Themes oder Plugins Code enthalten, der mit der neuen Umgebung nicht mehr funktioniert. Umgekehrt kann auch ein Wechsel auf eine ältere Version Probleme verursachen, wenn aktuelle Komponenten neuere PHP-Funktionen voraussetzen.
Typische Symptome sind:
- Die Website zeigt nur eine weiße oder nahezu leere Seite.
- Im Frontend erscheint ein „kritischer Fehler“.
- Das Theme wird nicht mehr korrekt geladen.
- Menüs, Widgets oder Layoutbereiche fehlen.
- Der WordPress-Administrationsbereich ist nicht erreichbar.
- Einzelne Seiten funktionieren, während andere einen Fehler ausgeben.
- Nach der Umstellung treten Warnungen oder veraltete Funktionsmeldungen auf.
Wichtig ist, nicht sofort Dateien zu überschreiben oder mehrere Änderungen gleichzeitig vorzunehmen. Eine nachvollziehbare Fehleranalyse spart Zeit und verhindert, dass die eigentliche Ursache verdeckt wird.
Die häufigsten Ursachen nach einem PHP-Wechsel
Veraltete PHP-Funktionen im Theme
Ein Theme kann Funktionen verwenden, die in einer neueren PHP-Version entfernt oder strenger behandelt werden. Besonders problematisch sind alte Konstruktoren, veraltete Zugriffsmethoden, nicht mehr unterstützte Funktionen und Code, der sich auf frühere PHP-Eigenheiten verlässt.
Manchmal führt eine solche Stelle unmittelbar zu einem fatalen Fehler. In anderen Fällen erscheint zunächst nur eine Warnung. Diese Warnung kann jedoch später zu Folgefehlern führen, etwa wenn eine erwartete Variable nicht gesetzt wird oder ein Rückgabewert anders ausfällt als früher.
Fehler in einer individuellen Theme-Anpassung
Viele Websites enthalten Anpassungen in der functions.php, in Template-Dateien oder in einem Child Theme. Diese Änderungen stammen nicht zwingend vom ursprünglichen Theme-Hersteller. Auch ein kleiner eigener Codeblock kann nach dem PHP-Wechsel die Darstellung oder die gesamte Website blockieren.
Besonders sorgfältig solltest Du Änderungen prüfen, die Filter, Actions, Datenbankabfragen, eigene Shortcodes oder externe Schnittstellen verwenden. Der Fehler kann dabei sowohl im Child Theme als auch im übergeordneten Theme liegen.
Ein Plugin verursacht den Fehler
Das Theme wirkt häufig nur deshalb kaputt, weil ein Plugin in den gleichen Ladeprozess eingreift. Plugins können Theme-Funktionen überschreiben, eigene Template-Dateien laden oder über Hooks Daten verändern. Ein inkompatibles Plugin kann deshalb nach dem PHP-Wechsel den Eindruck erwecken, das Theme sei die Ursache.
Eine systematische Deaktivierung der Plugins ist daher ein wichtiger Bestandteil der Diagnose. Wenn die Website danach wieder funktioniert, aktivierst Du die Erweiterungen einzeln und prüfst, ab welchem Schritt der Fehler zurückkehrt.
Unpassende Server- oder PHP-Konfiguration
Nicht jede Störung entsteht durch den PHP-Code selbst. Auch Einstellungen wie das Memory-Limit, die maximale Ausführungszeit, aktivierte PHP-Erweiterungen oder die verwendete PHP-Schnittstelle können eine Rolle spielen. Ein Theme kann beispielsweise eine Erweiterung voraussetzen, die auf dem Server nicht aktiv ist.
Außerdem kann ein Hosting-Wechsel neben der PHP-Version weitere Änderungen mit sich bringen. Dazu gehören ein anderer Webserver, eine geänderte Datenbankverbindung, neue Dateirechte oder eine andere Konfiguration des PHP-FPM-Dienstes.
Erste Hilfe: Website sichern und Fehlerbild dokumentieren

Die Darstellung macht sichtbar, dass ein Backup vor jeder technischen Änderung zur Rückfallebene gehört. Wichtig sind sowohl die WordPress-Dateien als auch die Datenbank und die Dokumentation der verwendeten PHP-Version.
Bevor Du die PHP-Version erneut änderst oder Dateien bearbeitest, solltest Du den aktuellen Zustand sichern. Dazu gehören mindestens die WordPress-Dateien und die Datenbank. Ein Backup ist keine Garantie, dass die Wiederherstellung automatisch funktioniert. Es bietet Dir aber eine wichtige Rückfallebene, wenn eine Reparaturmaßnahme unerwartete Folgen hat.
Dokumentiere außerdem möglichst genau:
- Welche PHP-Version vorher aktiv war.
- Auf welche Version umgestellt wurde.
- Wann der Fehler erstmals auftrat.
- Ob gleichzeitig ein Theme, Plugin oder WordPress aktualisiert wurde.
- Welche Seiten und Funktionen betroffen sind.
- Welche Fehlermeldung im Browser oder im Hosting-Log erscheint.
Wenn die Umstellung gerade erst erfolgt ist und die Website nicht erreichbar bleibt, kann ein vorübergehender Wechsel auf die vorherige PHP-Version die Erreichbarkeit wiederherstellen. Das sollte jedoch nur als Diagnose- oder Übergangsschritt verstanden werden. Eine alte PHP-Version dauerhaft einzusetzen, kann Sicherheits- und Kompatibilitätsprobleme verlängern.
Fehler systematisch eingrenzen
1. WordPress-Debugging kontrolliert aktivieren
WordPress kann technische Fehler in einer Logdatei protokollieren. Dafür werden in der Datei wp-config.php passende Debug-Konstanten gesetzt. Auf einer produktiven Website sollten Fehlermeldungen nicht direkt für Besucher ausgegeben werden. Eine typische Konfiguration sieht sinngemäß so aus:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
Die genaue Einstellung sollte zur Umgebung passen. Prüfe danach die Datei wp-content/debug.log, sofern Dein Hosting das Schreiben der Logdatei erlaubt. Nach der Analyse solltest Du Debugging auf der Live-Website nicht unnötig aktiviert lassen und sensible Fehlermeldungen nicht öffentlich anzeigen.
Zusätzlich können die PHP-Fehlerprotokolle des Hostings entscheidend sein. Dort findest Du oft den Dateipfad, die Zeilennummer und die konkrete Fehlermeldung. Eine Meldung wie „Call to undefined function“ weist auf eine nicht verfügbare Funktion hin. „Undefined variable“ oder „Trying to access array offset“ deutet häufig auf Code hin, der unter der neuen PHP-Version strenger behandelt wird.
2. Prüfen, ob nur das Theme betroffen ist
Wenn der Administrationsbereich noch erreichbar ist, kannst Du testweise auf ein Standard-Theme wechseln. Verwende dafür ein installiertes, kompatibles WordPress-Standard-Theme. Funktioniert die Website damit wieder, liegt die Ursache wahrscheinlich im bisherigen Theme oder in dessen Zusammenspiel mit einem Plugin.
Ist der Administrationsbereich nicht erreichbar, kann ein Wechsel über die Datenbank oder per Dateizugriff erforderlich sein. Solche Änderungen solltest Du nur nach einem Backup durchführen. In der WordPress-Datenbank werden das aktive Theme und das Stylesheet-Theme über die entsprechenden Optionen gespeichert. Die konkrete Vorgehensweise hängt von der verwendeten Datenbankverwaltung und der WordPress-Version ab.
3. Plugins einzeln testen
Deaktiviere zunächst alle Plugins und prüfe, ob das Theme ohne Erweiterungen wieder funktioniert. Falls kein Login möglich ist, kann das Umbenennen des Plugin-Verzeichnisses per SFTP oder Hosting-Dateimanager eine vorübergehende Deaktivierung bewirken. Danach solltest Du die Plugins einzeln oder in kleinen, nachvollziehbaren Schritten wieder aktivieren.
Beginne mit Erweiterungen, die besonders eng mit dem Theme verbunden sind, etwa Page Builder, Shop-Erweiterungen, Caching-Systeme, SEO-Plugins oder Plugins für individuelle Felder. Prüfe nach jeder Aktivierung das Frontend und wichtige Funktionen wie Formulare, Navigation und Suchseiten.
4. Cache vollständig leeren
Nach einer PHP- oder Theme-Änderung können mehrere Cache-Ebenen veraltete Dateien ausliefern. Dazu gehören der WordPress-Cache, ein Plugin-Cache, der Server-Cache, ein CDN und der Browser-Cache. Leere diese Ebenen kontrolliert und teste anschließend in einem privaten Browserfenster.
Ein Cache ist jedoch selten die eigentliche Ursache für einen fatalen PHP-Fehler. Wenn im Log ein konkreter Programmierfehler erscheint, solltest Du diesen beheben und nicht nur den Cache löschen.
Theme, Child Theme oder Plugin als Fehlerquelle unterscheiden
Eine saubere Zuordnung ist wichtig, weil die Lösung davon abhängt. Bei einem Fehler im Haupt-Theme kann ein Update des Herstellers helfen. Bei einer eigenen Anpassung ist oft eine Codekorrektur im Child Theme oder in einem individuellen Plugin sinnvoller. Bei einem Plugin-Problem muss die Erweiterung aktualisiert, ersetzt oder technisch angepasst werden.
| Beobachtung | Mögliche Ursache | Sinnvoller nächster Schritt |
|---|---|---|
| Standard-Theme funktioniert, bisheriges Theme nicht | Theme-Code oder Child-Theme-Anpassung | Theme- und Child-Theme-Dateien sowie Logs prüfen |
| Fehler verschwindet nach Deaktivierung eines Plugins | Plugin-Konflikt oder inkompatibler Plugin-Code | Plugin aktualisieren, ersetzen oder gezielt anpassen |
| Alle Themes zeigen einen Fehler | Server, PHP-Erweiterung, WordPress-Core oder allgemeiner Plugin-Fehler | Hosting-Logs und WordPress-Umgebung untersuchen |
| Nur einzelne Seiten sind betroffen | Bestimmtes Template, Shortcode, Widget oder individueller Inhalt | Betroffene Vorlage und Inhalte mit funktionierenden Seiten vergleichen |
| Nur Layout oder Styling fehlt | CSS, Cache, Build-Dateien oder Theme-Assets | Browser-Konsole, Netzwerkanfragen und Cache kontrollieren |
PHP- und Theme-Kompatibilität richtig bewerten
Die Versionsnummer allein beantwortet nicht, ob eine Website kompatibel ist. Entscheidend ist das Zusammenspiel aus WordPress-Core, Theme, Child Theme, Plugins, Serverkonfiguration und individueller Programmierung.
Prüfe deshalb:
- Welche PHP-Version das Theme offiziell unterstützt.
- Ob eine aktuelle Theme-Version verfügbar ist.
- Ob das Child Theme Funktionen des Haupt-Themes voraussetzt.
- Ob Plugins kompatible Versionen für die verwendete PHP-Umgebung bereitstellen.
- Ob die verwendeten PHP-Erweiterungen auf dem Server aktiv sind.
- Ob in eigenen Dateien veraltete Syntax oder unsichere direkte Datenbankzugriffe vorkommen.
Ein Theme-Update kann Fehler beheben, aber auch eigene Anpassungen überschreiben, wenn diese direkt im Haupt-Theme vorgenommen wurden. Deshalb sollten individuelle Änderungen grundsätzlich updatefähig umgesetzt werden. Geeignete Orte sind je nach Anwendungsfall ein Child Theme, ein eigenes Plugin, Hooks, Filter oder die vorgesehenen Einstellmöglichkeiten des Themes.
Typische technische Fehler und ihre Lösungen
Fataler Fehler durch entfernte oder unbekannte Funktionen
Wenn das Log auf eine nicht vorhandene Funktion verweist, solltest Du zunächst feststellen, ob diese Funktion aus PHP, WordPress, einem Plugin oder einer Bibliothek stammt. Bei PHP-Funktionen ist die Dokumentation der verwendeten PHP-Version relevant. Bei WordPress-Funktionen prüfst Du, ob die Funktion korrekt geschrieben und für die installierte WordPress-Version verfügbar ist.
Ersetze problematischen Code nicht blind. Eine moderne Alternative muss dieselbe Aufgabe erfüllen und zum bestehenden Datenfluss passen. Bei sicherheitsrelevanten Funktionen wie Dateioperationen, Datenbankabfragen oder Benutzerdaten ist eine sorgfältige Prüfung besonders wichtig.
Warnungen durch strengere Typen und Rückgabewerte
Neuere PHP-Versionen reagieren teilweise strenger auf falsche Datentypen, ungültige Argumente oder nicht initialisierte Variablen. Ein Theme kann dann Warnungen oder Type-Errors erzeugen, obwohl es früher scheinbar funktioniert hat.
Die Lösung besteht nicht darin, Warnungen pauschal zu unterdrücken. Besser ist es, Werte vor der Verarbeitung zu prüfen, erwartete Datentypen einzuhalten und Rückgabewerte korrekt zu behandeln. Bei Daten aus Formularen, URLs oder der Datenbank sollten außerdem die vorgesehenen WordPress-Funktionen zur Validierung, Bereinigung und Ausgabe verwendet werden.
Probleme mit Datenbankabfragen
Individuelle Theme-Funktionen greifen manchmal direkt auf die WordPress-Datenbank zu. Fehlerhafte Abfragen, nicht vorhandene Tabellen oder unsauber zusammengesetzte SQL-Anweisungen können nach einer Umstellung sichtbar werden. Verwende für WordPress-Datenbankabfragen nach Möglichkeit die dafür vorgesehene Datenbankklasse und bereite dynamische Werte korrekt auf.
Wenn ein Fehler nur bei bestimmten Beiträgen oder Suchanfragen auftritt, vergleiche die betroffenen Daten mit funktionierenden Datensätzen. Das kann zeigen, ob nicht der PHP-Wechsel selbst, sondern ein bestimmter Inhaltspfad das Problem auslöst.
CSS- oder JavaScript-Fehler nach dem PHP-Wechsel
Ein PHP-Fehler kann verhindern, dass Stylesheets oder JavaScript-Dateien korrekt eingebunden werden. Ebenso können neu erzeugte Cache-Dateien oder geänderte Theme-Assets das Layout beeinträchtigen. Prüfe im Browser die Entwicklerwerkzeuge und achte auf fehlende Dateien, Statusfehler und JavaScript-Meldungen.
Wenn das HTML vorhanden ist, aber das Layout nicht stimmt, liegt die Ursache möglicherweise nicht in PHP. Ein Vergleich des Quelltexts vor und nach der Umstellung kann helfen. Bei gebündelten oder minimierten Dateien solltest Du zum Testen die Optimierung vorübergehend reduzieren.
Praxisbeispiel: Nach dem PHP-Upgrade erscheint ein kritischer Fehler
Angenommen, eine Unternehmenswebsite zeigt direkt nach einem PHP-Upgrade nur noch eine Fehlermeldung. Im Hosting-Log steht, dass eine Methode in der functions.php des Child Themes einen ungültigen Rückgabewert verarbeitet.
- Du sicherst Dateien und Datenbank und notierst die vorherige PHP-Version.
- Du prüfst das PHP-Log und die WordPress-Debug-Datei, ohne Fehler öffentlich auszugeben.
- Du wechselst vorübergehend auf ein kompatibles Standard-Theme, um Theme und Server voneinander zu trennen.
- Du deaktivierst Plugins und aktivierst sie anschließend einzeln wieder.
- Du untersuchst die genannte Zeile im Child Theme und die Funktion, die den Rückgabewert liefert.
- Du testest die Korrektur zunächst in einer Staging-Umgebung.
- Du prüfst danach Startseite, Unterseiten, Navigation, Formulare, Suche und gegebenenfalls Shop-Funktionen.
- Erst wenn die Tests erfolgreich sind, überträgst Du die Änderung auf die Live-Website.
Dieses Vorgehen verhindert, dass eine vermutete Ursache mit mehreren ungeprüften Änderungen vermischt wird. Falls die Funktion aus einem Plugin stammt, sollte die Anpassung nicht einfach dauerhaft in einer Plugin-Datei erfolgen, weil ein späteres Update sie überschreiben kann.
Reparatur auf Staging statt direkt auf der Live-Website
Eine Staging-Umgebung ist eine möglichst realitätsnahe Kopie der Website, auf der Du Updates und Codeänderungen testen kannst. Sie ersetzt kein Backup, reduziert aber das Risiko, dass Besucher während der Fehlersuche eine unvollständige oder fehlerhafte Website sehen.
Vor einem Test solltest Du die Unterschiede zwischen Staging und Live-System kennen. Dazu können abweichende URLs, Zugangsdaten, Zahlungsfunktionen, externe Schnittstellen oder geplante Aufgaben gehören. Kopiere keine produktiven Zugangsdaten unkontrolliert in die Testumgebung.
Teste nach einer Reparatur nicht nur die Startseite. Kontrolliere auch dynamische Bereiche, eingeloggte Benutzer, Kontaktfunktionen, Suchergebnisse, Medien, responsives Layout und gegebenenfalls WooCommerce-Prozesse. Ein Theme kann auf einer statischen Seite funktionieren und erst bei einem bestimmten Template oder Benutzerstatus scheitern.
Was Du bei der dauerhaften Lösung beachten solltest
- Halte WordPress-Core, Theme und Plugins auf einem gepflegten, miteinander verträglichen Stand.
- Vermeide Änderungen direkt in WordPress-Core-Dateien und im Haupt-Theme.
- Dokumentiere eigene PHP-Anpassungen und ihre Abhängigkeiten.
- Nutze Backups mit getesteter Wiederherstellung statt nur automatische Sicherungen vorauszusetzen.
- Prüfe PHP-Wechsel zuerst in einer Testumgebung.
- Entferne nicht mehr benötigte Plugins und Themes, wenn sie nicht mehr gepflegt werden.
- Beobachte nach der Umstellung Logs und wichtige Funktionen über einen angemessenen Zeitraum.
Wenn ein Theme nicht mehr gepflegt wird und keine kompatible Version verfügbar ist, kann eine schrittweise Migration auf ein aktuelles Theme sinnvoller sein als immer weitere Einzelkorrekturen. Dabei müssen Templates, Design, Inhalte, Menüs, Widgets und individuelle Funktionen getrennt betrachtet werden.
FAQ
Warum ist mein WordPress Theme nach dem PHP-Wechsel plötzlich kaputt?
Häufig verwendet das Theme oder eine individuelle Anpassung veraltete PHP-Funktionen. Möglich sind aber auch Plugin-Konflikte, fehlende PHP-Erweiterungen, Serveränderungen oder Cache-Probleme. Das PHP- und WordPress-Log liefert meist den besten ersten Hinweis.
Soll ich sofort wieder auf die alte PHP-Version zurückwechseln?
Ein vorübergehender Rückwechsel kann die Website wieder erreichbar machen und die Diagnose erleichtern. Er sollte jedoch keine dauerhafte Reparatur ersetzen. Prüfe, warum die neue Version den Fehler auslöst, und teste eine nachhaltige Lösung in einer sicheren Umgebung.
Wie finde ich heraus, ob das Theme oder ein Plugin schuld ist?
Aktiviere testweise ein kompatibles Standard-Theme und deaktiviere alle Plugins. Funktioniert die Website danach, aktivierst Du Theme und Plugins schrittweise wieder. So lässt sich der auslösende Bestandteil meist eingrenzen.
Kann ein Theme-Update das Problem lösen?
Ja, wenn der Theme-Hersteller die PHP-Kompatibilität verbessert hat. Prüfe aber vorher die Änderungsinformationen und sichere Deine Website. Eigene Änderungen im Haupt-Theme können beim Update verloren gehen. Ein Child Theme oder ein eigenes Plugin ist für individuelle Anpassungen meist geeigneter.
Was mache ich bei einer weißen Seite ohne Fehlermeldung?
Aktiviere das WordPress-Debugging so, dass Fehler in eine Logdatei geschrieben, aber nicht öffentlich angezeigt werden. Zusätzlich solltest Du die PHP-Fehlerprotokolle des Hostings prüfen. Teste danach Standard-Theme und Plugins, um die Fehlerquelle einzugrenzen.
Ist eine höhere PHP-Version immer besser für WordPress?
Eine aktuelle, vom Hosting und von Deinen Komponenten unterstützte PHP-Version ist grundsätzlich sinnvoll. „Höher“ bedeutet aber nicht automatisch kompatibel. Theme, Plugins, WordPress-Version und Serverkonfiguration müssen gemeinsam betrachtet und vor der Umstellung getestet werden.
Wie verhindere ich ähnliche Probleme beim nächsten PHP-Wechsel?
Erstelle ein aktuelles Backup, teste die Umstellung in einer Staging-Umgebung, aktualisiere Theme und Plugins kontrolliert und dokumentiere die verwendete Konfiguration. Prüfe anschließend wichtige Funktionen und behalte die Logs im Blick.
Fazit
Wenn ein WordPress Theme nach einem PHP-Wechsel kaputt ist, solltest Du nicht vorschnell einzelne Dateien ersetzen oder mehrere Updates gleichzeitig durchführen. Sichere zunächst die Website, dokumentiere die Änderung und prüfe die konkreten PHP- und WordPress-Logs. Danach grenzt Du Theme, Child Theme, Plugins und Serverkonfiguration systematisch voneinander ab.
Für die dauerhafte Lösung sind updatefähige Anpassungen, eine kompatible Komponenten-Auswahl und Tests in einer Staging-Umgebung entscheidend. Wenn der Fehler durch veralteten oder individuellen Code verursacht wird, kann eine gezielte technische Überarbeitung sinnvoller sein als ein dauerhafter Rückwechsel auf eine alte PHP-Version.

