Le WordPress d'aujourd'hui, décodé pour les développeurs

FSE

WordPress 7.0 et l’éditeur de site : PHP 8.4 minimum, ce qu’il faut corriger

WordPress 7.0 relève le seuil minimal à PHP 8.4. Liste de contrôle des motifs de code hérités à corriger dans un thème bloc avant de franchir cette exigence.

Par Clément Hadrot • 7 juin 2026 • 4 min de lecture • Aucun commentaire
WordPress 7.0 et l'éditeur de site : PHP 8.4 minimum, ce qu'il faut corriger

wp core check-update ne suffit plus à lui seul pour anticiper une montée de version majeure : avec WordPress 7.0, qui exige PHP 8.4 comme seuil minimal d’exécution, la préparation d’un thème bloc hérité demande un audit de code, pas seulement une vérification de compatibilité de plugin.

Cette liste de contrôle rassemble les motifs de code les plus fréquemment rencontrés dans les thèmes blocs construits progressivement depuis plusieurs années, susceptibles de générer des avertissements ou des erreurs une fois le socle PHP relevé à 8.4. Elle ne couvre volontairement pas les nouveautés éditoriales apportées par WordPress 7.0 lui-même, ni la compatibilité des extensions tierces installées à côté du thème.

1. Les paramètres implicitement nullables

Le motif le plus fréquent, de loin, dans les thèmes blocs qui datent de plusieurs années : un paramètre typé avec une valeur par défaut à null, sans marquage explicite du type comme nullable.

// à corriger
function afficher_bloc( string $classe = null ) { /* ... */ }

// corrigé
function afficher_bloc( ?string $classe = null ) { /* ... */ }

Une recherche globale dans le thème permet d’en dresser la liste avant toute montée réelle :

grep -rnE ": *(string|int|float|bool|array) *\\\$[a-zA-Z_]+ *= *null" wp-content/themes/mon-theme --include=*.php

2. Les propriétés dynamiques non déclarées

L'essentiel à retenir : Les paramètres implicitement nullables restent le motif le plus fréquent ; Les propriétés dynamiques non déclarées doivent recevoir un attribut explicite ; Un audit PHPCompatibility avant montée évite le plus gros des mauvaises surprises

Les classes PHP qui reçoivent des propriétés créées à la volée, sans déclaration préalable ni attribut #[AllowDynamicProperties], restent un motif fréquent d’avertissement hérité des versions précédentes de PHP. Le correctif consiste soit à déclarer explicitement chaque propriété utilisée, soit, quand la structure de la classe le justifie réellement, à ajouter l’attribut correspondant au-dessus de sa déclaration.

3. Les appels de fonctions dépréciées du cœur WordPress

Indépendamment de PHP lui-même, certaines fonctions du cœur WordPress marquées dépréciées depuis plusieurs versions continuent d’être appelées dans d’anciens thèmes. La commande WP-CLI suivante liste les appels à des fonctions dépréciées détectés lors de l’exécution d’une page :

wp eval-file audit-fonctions-depreciees.php --url=recette.mon-site.example

4. Les comparaisons de type implicites sur des identifiants

Les comparaisons entre un identifiant récupéré en base (chaîne de caractères issue de $_GET ou d’un attribut de bloc) et une valeur entière, réalisées avec l’opérateur d’égalité simple plutôt que strict, restent un motif de bug latent, indépendamment de PHP 8.4, mais qui devient plus visible à mesure que les avertissements de conversion de type se multiplient dans les journaux.

5. Les classes qui redéfinissent une méthode sans attribut de contrôle

PHP 8.3 a introduit l’attribut #[\Override], qui permet de signaler explicitement qu’une méthode surcharge une méthode parente. Sans être une obligation stricte, son ajout facilite la détection d’erreurs de frappe dans le nom d’une méthode censée surcharger une méthode existante, un motif d’erreur silencieuse fréquent dans les classes de blocs personnalisés qui étendent une classe du cœur.

6. Les tests de compatibilité automatisés avant la montée réelle

Au-delà de la correction manuelle de ces motifs, un passage automatisé par un outil d’analyse statique reste la meilleure garantie de ne rien oublier :

  1. Installer PHPStan avec l’extension PHPCompatibility ciblant PHP 8.4 sur l’ensemble du thème.
  2. Corriger les erreurs bloquantes remontées avant toute erreur de niveau avertissement.
  3. Rejouer l’analyse sur un environnement de recette réel, avec un trafic représentatif pendant au moins quelques jours, avant la bascule en production.
  4. Documenter chaque correctif appliqué, pour que la prochaine montée de version majeure bénéficie de cette liste déjà défrichée.

Sur un thème bloc qui a traversé plusieurs versions majeures de WordPress sans réécriture complète, le vrai risque n’est jamais PHP 8.4 en lui-même, mais l’accumulation silencieuse de tolérances de versions précédentes qui n’ont jamais été nettoyées.

En résumé

Ces six points de contrôle ne prétendent pas remplacer un audit de code complet, mais couvrent les motifs les plus régulièrement rencontrés sur des thèmes blocs hérités au moment de relever le seuil minimal de PHP. Le détail des changements de comportement propres à PHP 8.4 reste consultable dans son guide de migration officiel, une lecture qui vaut largement le temps qu’elle prend avant toute montée en production d’un parc de thèmes.

Partager :

À propos de l'auteur

Clément Hadrot

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi