info@netz-gaenger.de       📞 +49 151 / 28859057

Probleme nach PHP9 Update auf WordPress Website

PHP ist die Basis von WordPress und regelmäßig werden Updates dafür veröffentlicht, die dann von Webhostern ihren KundInnen zur Verfügung gestellt (oder nach einer gewissen Übergangszeit aufgezwungen) werden. In der Regel gibt es mit jeder neuen Version von PHP, vor allem mit Major Releases wie PHP 9, Probleme mit veralteten WordPress Websites.

Wieso machen PHP Updates Probleme in WordPress?

In jeder neuen Version von PHP werden neue Befehle eingeführt und alte Befehle werden als „veraltet“ markiert. Nach und nach verschwinden dann diese „deprecated“ PHP Befehle ganz aus PHP und genau das macht dann am Ende die Probleme: Setzt du veraltete Themes oder Plugins ein, kann es sein, dass diese alten Befehle dort noch verwendet werden. Und sobald du dann auf die neue Version von PHP aktualisierst oder aktualisieren musst, erhältst du Fehlermeldungen oder deine Website funktioniert gar nicht mehr. Der klassische „White Screen of Death“ oder Kritische Fehler werden dann angezeigt und deine Website ist nicht mehr nutzbar. Typische Fehlermeldungen von PHP9 findest du weiter unten im Artikel.


Muss ich PHP Updaten?

In der Regel zwingen dich die Hoster deiner Website irgendwann einmal dazu, dass du deine PHP Version hochstellst, weil sie den Support (oder auch bezahlbaren extended Support) von PHP einstellen. Von daher wirst du auf lange Sicht nicht darum herum kommen, auch PHP zu aktualisieren. Dieser Zwang hat aber natürlich auch gute Seiten: Ist deine Website kompatibel zu neuen Versionen von PHP, ist sie auch besser gepflegt und läuft besser und performanter. Sicherheitslücken werden ebenso geschlossen durch neue PHP Versionen.


Ab wann sollte ich auf PHP 9 aktualisieren?

Es ist nicht immer zwangsweise direkt nötig auf die aktuellste Version von PHP zu aktualisieren. In der Regel hat man Monate bis Jahre Zeit, bis der Support der Version zuvor komplett eingestellt wird. Nichtsdestotrotz solltest du dir nicht ewig Zeit lassen mit dem Update auf PHP9, sobald diese Version erscheint. Das Aufschieben von Updates macht nicht selten dann Probleme, wenn man dann plötzlich updaten MUSS, weil der Hoster einen dazu zwingt. Dann muss schnell eine Lösung für Probleme gefunden werden und oft wird das teurer, als hättest du schon länger an der Lösung gearbeitet.


Was passiert, wenn ich PHP für meine WordPress Website nicht update?

Wie bereits beschrieben wird deine Website in veralteten Bestandteilen inkompatibel zu neueren PHP Versionen und sobald du umstellen musst, treten die besagten Probleme auf. Es gibt Hoster, die erlauben die Verwendung von steinalten PHP Versionen, mit allen Nachteilen für Website-BetreiberInnen und die Server des Hosters: Durch ganz alte Versionen von PHP ist die Belastung der Server größer und es sind viele Sicherheitslücken nicht gestopft, so dass Websites einfacher gehackt werden können.


Meldung vom Webhoster, dass auf PHP 9 aktualisiert werden muss

Jedes Jahr erhalten meine KundInnen typische Meldungen von WordPress-Hostern wie 1&1/IONOS, Strato, HostEurope, Cyon, HostPoint, etc., dass sie ihre Websites auf neuere Versionen von PHP aktualisieren müssen. So war es bei PHP 5.5, 7 und 8 der Fall und so ist es auch bei PHP 9. Manche Hoster bieten dann einen zu bezahlenden „Extended Support“, der aber nicht allzu lange genutzt werden sollte. Hiermit wird die nötige Aktualisierung von PHP nur aufgeschoben. In manchen Fällen, wenn zB bereits neue Websites in der Mache und noch nicht veröffentlicht wurden, kann der Einsatz des Extended Supports aber Sinn machen, um kurzfristige Kosten zu vermeiden.


WP Website geht nicht mehr nach PHP 9 Update

Auch bei PHP 9 treten nach der Aktualisierung darauf bei zahlreichen WP Websites Probleme und Errors auf. Das liegt daran, dass PHP9 wieder einige Befehle rauswirft, die zuvor noch erlaubt waren. Typische Fehlermeldungen, die mit PHP 9 in Verbindung stehen:

Exception bei Unserialisierungsfehlern:

// PHP 8.3: "Warning: unserialize(): Error at offset 0 of 3 bytes"
// PHP 9.0: "Fatal error: Uncaught UnserializationFailedException: unserialize(): Error at offset 0 of 3 bytes"

Entfernung veralteter Funktionen:

// PHP 8.x: "Deprecated: Function create_function() is deprecated"
// PHP 9.0: "Fatal error: Uncaught Error: Call to undefined function create_function()"

Fehler bei nicht definierten Variablen und Eigenschaften:

// PHP 8.x: "Warning: Undefined variable $foo"
// PHP 9.0: "Fatal error: Uncaught Error: Undefined variable '$foo'"

Ausnahme bei dynamischen Eigenschaften:

// PHP 9.0: "Fatal error: Uncaught Error: Cannot create dynamic property Car::$year"

Inkompatible Rückgabetypen:

// PHP 8.x: "Deprecated: Declaration of MyDateTime::modify(string $modifier) should be compatible with DateTime::modify(string $modifier): DateTime|false"
// PHP 9.0: "Fatal error: Declaration of MyDateTime::modify(string $modifier) must be compatible with DateTime::modify(string $modifier): DateTime|false"

Entfernung von ${} String-Interpolation:
// PHP 9.0: "Fatal error: Uncaught Error: Undefined variable: foo"

Autovivifikation bei false entfernen:

// PHP 9.0: "Fatal error: Uncaught Error: Cannot use a scalar value as an array"

Konstruktoren und Destruktoren dürfen keine Werte zurückgeben:

// PHP 9.0: "Fatal error: Uncaught Error: Constructors cannot return a value"
// PHP 9.0: "Fatal error: Uncaught Error: Destructors cannot return a value"

Achtung: Du erhältst hier keine Hinweise auf die Behebung dieser konkreten Fehlermeldungen. Hierzu findet sich im Netz bereits sehr viel Hilfe. Sinn dieses Artikels ist, dass du überhaupt nachvollziehen kannst, woher das Problem kommt (PHP 9 Update) und wieso deine Website voraussichtlich Probleme macht (veraltete Software). Solltest du selbst gar nicht weiter kommen und Hilfe benötigen bei der Aktualisierung deiner Website auf PHP 9, dann kannst du dich gerne an mich wenden.


WordPress Fehler durch PHP 9 Update beheben

Die Behebung dieser PHP 9 Update-Fehler in WordPress ist für Website-BetreiberInnen relativ einfach erklärt (für EntwicklerInnen natürlich ungleich komplizierter):

  • Verwende nur aktualisierte Software in deiner WP Websites, die auch PHP 9 kompatibel ist
  • Stelle sicher, dass WP, Theme und Plugins auf dem neuesten Stand sind
  • Stelle sicher, dass Theme und Plugins überhaupt noch Updates erhalten (Check zB über FTP Ordner /wp-content/plugins : Alles was älter als 1 Jahr ist, ist potentiell veraltet)
  • Frage bei veralteten Themes und Plugins die Hersteller, ob das Produkt überhaupt noch weiterentwickelt wird
  • Aktiviere alle Premium Plugins und Themes, um Updates zu erhalten
  • Spreche im Zweifelsfall mit dem/der EntwicklerIn der Site, solltest du zB individuell programmierte Plugins oder Themes nutzen, die nicht kompatibel sind
  • Richte eine regelmäßige Wartungs-Routine ein oder lasse deine WordPress-Website professionell warten

Hat dir mein Beitrag geholfen?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 5 / 5. Anzahl Bewertungen: 2

Letzte Version vom 1. Juli 2024 von Netzgänger

Beliebte Artikel

Wie gut ist HostPress, der spezialisierte WP Hoster?

Als WordPress-Entwickler habe ich viel mit Hostern zu tun. Hier liest du meine Erfahrungen zu HostPress und warum ich jetzt selber in einigen Projekten auf den Hosting-Anbieter setze.

Die besten Webhoster im Vergleich

Als WordPress Entwickler kenne ich alle guten Hoster. Hier zeige ich dir die besten WP Hoster und welcher für dich Sinn macht.

Muss WordPress gewartet werden?

Müssen WordPress Sites gewartet werden? Braucht es die regelmäßigen Updates oder kann man sich den Aufwand sparen? Das erkläre ich hier.

Die besten WP Security Plugins

WordPress solltest du immer absichern. Dafür gibt es diverse Plugins, die dich bei den Securitymaßnahmen unterstützen. Meine Empfehlungen.

Die besten Plugins für Auto-Übersetzung

Hier zeige ich dir 4 Plugins, die es ermöglichen WordPress automatisch zu übersetzen. Von wirklich gut bis wirklich schlecht ist alles dabei.

Die besten Plugins für Mehrsprachigkeit

Mit diesen 5 Plugins kannst du WordPress ganz einfach selber mehrsprachig einrichten. Multi-Language Fähigkeit in WP nachrüsten.

Bildnachweise: Freepik - Flaticon

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert