WordPress met bientôt à jour vers la version 5.6 qui vise à être compatible avec PHP 8. Cependant, WordPress a averti qu’il devrait être considéré comme «compatible bêta» et a expliqué pourquoi la mise à niveau vers PHP 8 devrait à ce stade être effectuée avec précaution.
Contexte de PHP
PHP est un langage de programmation qui s’exécute sur un serveur pour générer une page Web. WordPress lui-même est créé avec le langage PHP.
La version actuelle de PHP est PHP 7x. Le «x» est une référence aux différentes versions de PHP 7, qui représentent actuellement 7.2, 7.3 et 7.4.
Les versions antérieures à 7.2 ont atteint leur «fin de vie» (EOL) et sont plus mis à jour avec des correctifs de sécurité.
La version la plus ancienne, 7.2, devrait atteindre EOL le 30 novembre 2020. Cela signifie qu’elle ne recevra plus de mises à jour de sécurité et à cause de cela, elle deviendra une responsabilité de sécurité potentielle pour tout site qui l’utilise encore, si une vulnérabilité est découverte dans l’avenir.
La version 7.3 est prévue pour EOL le 6 décembre 2021.
Les éditeurs ont-ils jusqu’en 2022 pour passer à PHP 8?
La version actuelle et la plus à jour de PHP 7.x est la version 7.4. PHP 7.4 atteint EOL le 8 novembre 2022.
Publicité
Continuer la lecture ci-dessous
Cela signifie que techniquement, les éditeurs WordPress ont deux ans pour décider du moment où mettre à jour leur version PHP vers PHP 8. En pratique cependant, la plupart des éditeurs WordPress devraient être en mesure de mettre à jour PHP 8 bien avant cette date.
Pourquoi WordPress 5.6 est compatible bêta
WordPress a annoncé que la dernière version de WordPress prévue pour décembre 2020 devrait être compatible avec PHP 8. Cependant, WordPress a averti qu’il est toujours possible que des incompatibilités non découvertes puissent encore exister.
C’est une reconnaissance du fait que, bien que l’installation principale de WordPress soit compatible avec PHP 8, il existe toujours la possibilité que quelque chose ait été négligé.
C’est ainsi que le Guide WordPress 5.6 PHP 8 l’a formulé:
«WordPress Core vise à être compatible avec PHP 8.0 dans la version 5.6 (actuellement prévue pour le 8 décembre 2020).
… Des efforts importants ont été déployés pour rendre WordPress 5.6 compatible avec PHP 8 à lui seul, mais il est très probable qu’il reste des problèmes non découverts. »
Le fait qu’il reste des «problèmes non découverts» n’est pas une déclaration négative à propos de la version 5.6 de WordPress. C’est une reconnaissance pragmatique que dans la programmation, comme dans de nombreuses activités d’ingénierie, il y a presque toujours la possibilité que des erreurs ou des oublis imprévus existent.
Publicité
Continuer la lecture ci-dessous
Une considération peut-être plus importante est l’incertitude quant au moment où les thèmes et les plugins deviendront compatibles PHP 8. Cela plus que toute autre chose, pourrait contribuer à empêcher WordPress d’être considéré comme entièrement compatible avec PHP 8.
Les conseils officiels de WordPress 5.6 conseillaient:
«Il faut également reconnaître que WordPress n’est jamais utilisé de manière isolée (sans aucun thème ni plugins), donc WordPress lui-même pouvant fonctionner sur PHP 8 n’indique pas une compatibilité« totale ».
L’état du support de PHP 8 au sein de l’écosystème plus large (plugins, thèmes, etc.) est impossible à connaître. Pour cette raison, WordPress 5.6 doit être considéré comme «compatible bêta» avec PHP 8. »
WordPress 5.6 est «compatible bêta» avec PHP 8
Dans le développement de logiciels, il existe généralement deux versions finales. Il existe une version Alpha puis une version Beta. La version bêta est généralement considérée comme peut-être presque prête à être publiée. La version bêta du logiciel est ce qui précède la version finale d’un logiciel.
Ainsi, lorsque WordPress dit que la version 5.6 doit être considérée comme «compatible bêta», cela signifie qu’il peut y avoir des bogues et des erreurs qui n’ont pas encore été découverts.
Étant donné que les thèmes et les plugins ne sont peut-être pas encore compatibles avec PHP 8, il est probablement prudent de ne pas mettre à jour tant que tous les plugins et thèmes n’ont pas été vérifiés pour être compatibles avec PHP 8.
Mais même après que les thèmes et les plugins soient compatibles avec PHP 8, il peut être judicieux d’attendre au moins quelques mois de plus pour mettre à niveau.
La raison en est que PHP 8 est une mise à jour majeure. Bien que les thèmes et les plugins puissent être considérés comme compatibles avec PHP 8, il est presque inévitable que des bogues et d’autres problèmes soient découverts dans les thèmes et plugins compatibles avec PHP 8 installés sur un site.
La mise à jour vers PHP 8 cassera-t-elle les sites WordPress?
Il existe de nombreuses anciennes fonctions PHP de 7.x qui sont supprimées de PHP 8, ce qui signifie que les thèmes et les plugins qui les utilisent encore se casseront dans PHP 8.
Wordfence a récemment estimé que pour une seule des fonctions, plus de 5 500 plugins sont actuellement installés sur des millions de sites. Bien que l’utilisation de ces fonctions dans certains cas soit pour la compatibilité ascendante, ce n’est pas le cas pour toutes.
Publicité
Continuer la lecture ci-dessous
«… Nous avons identifié que create_function est toujours utilisé dans plus de 5 500 plugins WordPress, y compris des plugins extrêmement populaires avec des millions d’installations. Dans certains cas, l’utilisation de ces fonctions obsolètes peut être destinée à une compatibilité descendante avec les anciennes versions de PHP.
Cependant, de nombreux plugins auront besoin d’une refactorisation approfondie à mesure que PHP 8 sera de plus en plus utilisé. »
Yoast a récemment publié une étude sur la préparation PHP 8 des plugins et des thèmes au sein de l’écosystème WordPress.
Changements de rupture dans PHP 8
Dans la section de leur rapport traitant test des plugins et des thèmes, conclut Yoast:
«Seul un petit pourcentage des plugins disponibles, les plus populaires et les plus développés par des professionnels, ont des tests automatisés en place. Ceci est inquiétant car d’une manière générale, le site WordPress moyen utilise environ 19 ou 20 plugins.
… Cependant, plus que tout, les plugins / thèmes qui ont des tests sont probablement ceux où l’on peut s’attendre au moins de problèmes PHP 8.0 car ils utilisent un modèle de développement professionnel.
La multitude de plugins et de thèmes sans tests sont beaucoup plus préoccupants car ils seront plus susceptibles de poser problème lorsqu’ils sont exécutés sur PHP 8. »
Publicité
Continuer la lecture ci-dessous
Le rapport Yoast conclut:
“PHP 8 va contenir de nombreux changements de rupture.”
«Breaking changes» est une référence aux changements qui entraînent une erreur lorsqu’un thème ou un plugin utilise du code qui n’est plus pris en charge dans PHP 8.
PHP 8 et WordPress
PHP 8 représente une avancée importante pour le monde de l’édition, en particulier pour les utilisateurs de WordPress. L’un des avantages est que ce sera plus de sécurité.
Les conseils de WordPress concernant la mise à jour vers PHP 8 sont de recommander la prudence:
“… Il est fortement recommandé de tester minutieusement votre site avant de passer à PHP 8.”
Le fait que WordPress lui-même appelle WordPress 5.6 «compatible bêta» avec PHP 8 vous dit tout ce que vous devez savoir pour savoir si vous devez mettre à jour vers PHP 8 ou non.
— to www.searchenginejournal.com