Was ist beim Upgrade von PHP zu beachten?

PHP ist eine Skriptsprache, die hauptsächlich zur Erstellung dynamischer Webseiten oder Webanwendungen verwendet wird. Quasi der Motor der Website. Systemvoraussetzung für gängige Content-Management-Systeme wie WordPress, dessen Themes und Plugins. Für die Version 7.4, aber auch alle älteren, werden seit November 2022 keine Sicherheitsupdates mehr bereitgestellt. Ein Update auf die Version acht oder höher ist daher unbedingt zu empfehlen.

VersionVeröffentlichtSupportUpdates
7.428.11.2019nonenone
8.026.11.2020nonenone
8.125.11.2021none25.11.2024
8.208.12.202208.12.202408.12.2025
8.323.11.202323.11.202523.11.2026

Support erfolgt grundsätzlich ab der ersten stabilen Version für zwei Jahre. Während dieses Zeitraums werden gemeldete Fehler und Sicherheitsprobleme behoben und in regelmäßigen Zwischenversionen veröffentlicht. Für ein weiteres Jahr erfolgen dann Releases für kritische Sicherheitslücken, bevor das End of Life, wie im Fall der Version 8.0, erreicht ist.

Während aktuelle Versionen von WordPress, Typo3, Joomla oder Drupal keine Probleme bereiten dürften, sollten aber im Vorfeld unbedingt Themes und Plugins auf Kompatibilität geprüft werde. Die neuen Varianten ab PHP 8.0 bringen größere Veränderungen mit sich. Dass erst 15.1 % der Websites mit WordPress unter PHP v8 und höher laufen (Stand: Januar 2023. Quelle: wordpress.org) sollte niemanden vom auf kurz oder lang zwingenden Umstieg abhalten.

Sie benötigen Unterstützung bei der Migration
Sichern Sie sich Ihr kostenfreies Vorgespräch

Wer sich noch nicht um seine älteren Installationen von WordPress gekümmert hat, sollte dies ebenfalls unbedingt nachholen. Der Support für alle Versionen bis einschließlich 4.0 endete zum 01. Dezember 2022. Aktualisierungen bezüglich der Sicherheit Ihrer Website werden seither nicht mehr bereitgestellt. Dies gilt parallel auch für Typo3 v9 und älter, v10 wird nur bis April 2023 unterstützt.

Warum PHP aktualisieren?

Die Gründe für ein Update sind vielfältig, doch an erster Stelle stehen vermeidbare Sicherheitsrisiken, die alte, nicht mehr gepflegte Software generell mit sich bringt. Gleichzeit bringt PHP ab den Versionen acht und höher eine Verbesserung der Geschwindigkeit mit. Webseiten werden dank besserer Performance schneller an Besucher:innen ausgegeben. Die Stabilität bleibt gewährleistet, Systemausfälle aufgrund unterschiedlicher Technologien bzw. Standards werden verringert. Die Verfügbarkeit der Homepage besteht, auch wenn der Provider irgendwann nicht umhinkommen wird, alte Versionen abzuschalten. Daher empfiehlt sich u.U. auch eine Kontaktaufnahme mit dem Hostinganbieter. Ggf. wird es zu höheren Kosten für die Nutzung veralteter Software kommen, da höhere Administrations- und Wartungsaufwendungen beispielsweise mittels Sonderleistungen wie einem PHP Extended Support an den Kunden weitergegeben werden.

Wie schwierig ist ein Umstieg auf PHP 8?

Der Aufwand für eine Website unter WordPress v6 mit maximal zehn Plugins (für die Aktualisierungen vorliegen) sollte beispielsweise bei unter einer Stunde liegen. Also bei circa sechs Monatsbeiträgen für einen Extended Support, den Sie dann gar nicht (mehr) brauchen. Je älter eine Website ist und je mehr Plugins eingesetzt werden, desto komplexer wird allerdings die Migration, da potenzielle Fehler und der Aufwand deutlich ansteigen.

Gerne werfe ich einen Blick auf Ihre Website und
berate Sie unverbindlich hinsichtlich der Kosten

Wo liegen die potenziellen Probleme?

Es lassen sich drei Problemfelder einkreisen: erstens das Content-Management-System an sich, zweitens das Theme, Template bzw. Layout sowie drittens die verwendeten Ergänzungen und Plugins. Ganz wesentlich für einen reibungslosen Umstieg ist daher der Umstand, wie alt eine Homepage ist respektive wie gut diese sowie die eingesetzten Plugins gepflegt wurden. Code, der alte Funktionen verwendet, die von neueren Versionen nicht mehr unterstützt werden, sind die Hauptursache allen Übels.

v7.4v8.0v.8.1v8.2
WordPress5.6 ff6.16.16.1
Typo38 bis 10111212
Drupal999 u. 109 u. 10
Joomla3.53.5 u. 43.5 u. 43.5 u. 4
A-Z ListingZeigt Beiträge, Seiten und Begriffe alphabetisch in einer katalog- oder verzeichnisähnlichen Liste an, allerdings ist die Funktion exclude-posts scheinbar obsolet, sodass ich mir für diese Art von Listen eine eigene Funktion geschrieben habe.
A.C.F. ab Vers. 6.2.5Advanced Cusom Fields bereitet wichtige Änderungen vor, die die Anzeige von Elementen mit the_field auf der Website betreffen. Die Ausgabe von potenziell unsicherem Code wie Skripte und Iframes wird unterbunden. Es wird in solchen Fällen empfohlen, dies mit echo get_field() zu umgehen. Alternativ kann ein Feld auch mit der Funktion add_filter( 'acf/the_field/allow_unsafe_html', function( $allowed, $selector ) freigegeben werden. Mehr Informationen im Blog des Herstellers: www.advancedcustomfields.com.
Branded Social ImagesTeilweise Probleme beim Update, die durch Löschen und neu-initialisieren des Ordner bsi-uploads in wp-content/uploads/ behoben werden konnten. Ggf. Probleme durch imagescale returning false in class.og-image- gd.php. Daher imagejpeg(imagescale($this->resource, $this->manager->width, $this->manager->height, IMG_BICUBIC_FIXED), $this->target, $quality); durch imagejpeg($this->resource, $this->target, $quality); ersetzen.
Folding Category ListNavigationsleiste die eine Kategorieliste anzeigt, die sich erweitert, wenn man in die einzelnen Unterebenen klicken. Plugin wurde vom Autor eingestellt, unter PHP8 noch begrenzte Funktionalität.
Multisite Domain MappingVor WordPress 4.5 war für Bereithalten mehrerer Sites und Domains ein Plugin wie WordPress Multisite Domain Mapping erforderlich. Seither ist dies eine native Funktion. Entsprechende Einträge z.B. in der Datei sunrise.php im Ordner wp-content sind damit ebenfalls obsolet.
Page Scroll to IdHier besteht ein Bug in der v1.7.7 (array to string conversation). Ein Fix steht als Developer Version bis zum nächsten Update des Plugin jedoch zum Download zur Verfügung.
Really Simple CaptchaDieses muss unter Umständen, je nach Serverkonfiguration, z. B. durch eine Rechenaufgabe ersetzt werden bzw. alternativ durch das Plugin Contact Form 7 Image Captcha.
Seo FrameworkAll-In-One-Seo hat mit dem Upgrade der Version 5 einige Änderungen der Struktur erfahren. Je nachdem wo Metas wie Beschreibung eingesetzt werden, muss beispielsweise $meta_description = function_exists( 'the_seo_framework' ) ? the_seo_framework()->get_description( $id ) : ''; in $meta_description = function_exists( 'tsf' ) ? tsf()->data()->plugin()->post()->get_meta_item( '_genesis_description', $id ) : ''; geändert werden.
Slideshow jQuery Image GalleryAus Sicherheitsgründen gesperrt. Mögliche Alternative ist Slider, Gallery, and Carousel by MetaSlider. Bildergalerien müssen allerdings neu aufgesetzt werden.
Smart 404Dieses Plugin wurde nicht mit den letzten Hauptversionen getestet, es bestehen Kompatibilitätsprobleme bei der Verwendung mit neueren Versionen von WordPress.
WordPress Sort OrderFunktioniert bis PHP v7.4 in meinen Projekten nur in Version 1.2.9. Version 1.3 dagegen klaglos unter v8 und höher.
Ursprünglich sollte der Support für das WordPress Classic Editor Plugin im Dezember 2021 eingestellt werden, doch der Support und die Wartung werden bis 2024 fortgesetzt (Classic Editor is an official WordPress plugin, and will be fully supported and maintained until 2024, or as long as is necessary. Stand: Juni 2024. Quelle: wordpress.org/plugins/classic-editor). Wird dieser noch genutzt, sollte erwogen werden, ob mit einem Umstieg auf v8, spätestens aber mit Ende des Lebenszyklus der v8.1 dieser nicht im gleichen Schritt im Rahmen des Upgrades gegen den mitgelieferten Blockeditor Gutenberg ersetzt wird.

Besonderes Augenmerk sollte daher auf Designvorlagen gelegt werden, die vor 2019 programmiert wurden sowie auf die eingesetzten Plugins. Oft wird als Mindestvoraussetzung PHP v5.6 oder höher angegeben, aber das heißt, nicht, dass diese unter PHP v8 auch funktionieren. Parallel sollte überprüft werden, ob die Erweiterungen, für die keine Updates vorliegen, von WordPress nicht wegen Sicherheitsproblemen aus dem Verzeichnis genommen wurden.

Welche Empfehlungen gelten für einen Umstieg?

Grundsätzlich steht bei mir bei jeder größeren Änderung ein Backup der Website sowie der Datenbank an allererster Stelle. Danach sollten WordPress und Plugins aktualisiert und getestet werden, bevor PHP umgestellt und die Homepage erneut von Login im Backend bis hin zur Funktionalität im Frontend geprüft wird. Bei größeren Projekten und umfangreichen Sites empfiehlt sich immer, statt Live eine Installation auf einer lokalen Arbeitsumgebung einzurichten, um alles in Ruhe zu testen und Fehler zu beheben.

Lassen sich Arbeiten zusammenlegen?

Werden Sie proaktiv, statt zu lange zu warten! Neben dem Umstieg sollte auch die Website an sich gleich mit überprüft werden. Templates, Erweiterungen oder alte Installationen, die nicht verwendet werden, sollten der Sicherheit zuliebe entfernt werden. Ebenso werden öfter einmal komplexe Plugins genutzt, die durch wenige Zeilen Code (oft auch dank technischem Fortschritt) eigentlich schon obsolet wären.
Suchmaschinenoptimierung ist in aller Munde. Die beste inhaltliche Optimierung ist für die Katz, wenn es technisch nicht stimmt. Ich liebe daher einen schlanken Code bzw. Quelltext. Überflüssige von WordPress eingespielte Styles (u.a. Classic Theme Styles, Gutenberg Global Styles) können i.d.R. durch Eintrag in der functions.php problemlos entfernt werden. Selbiges gilt z.B. für Emoji’s und sämtliche Prefetches.
Sie planen ein komplettes Redesign? Dann sollte in Betracht gezogen werden, wie die Website ggf. provisorisch umgestellt wird, ohne größere Kosten zu verursachen. Gerne berate ich Sie kostenlos und unverbindlich.

Autor: Internet-Marketing Inh.: Frank-M. Nowara
Web: www.internet-marketing.de
Mail: admin[ad]internet-marketing.de
Phone: 0049 (0)911 49 75 58
Fax: 0049 (0)911 49 75 09
Quelle: https://www.servicepraxis.com/plugins/php/