Guide des changements techniques de WordPress 6.5


Ce guide décrit les principaux changements techniques que vous trouverez sur WordPress 6.5, dont la sortie est prévue le 26 mars 2024.

Sur Trac (l’outil de tickets utilisés par le cœur de WordPress, environ 344 tickets on été clôturés : 99 d’entre eux concernent des améliorations et des nouvelles fonctionnalités, 210 concernent des corrections de bugs, et 35 d’autres tâches diverses et variées. Cette fois, il y a eu 20 tickets qui se sont concentrés sur les performances, 19 sur l’accessibilité et 23 sur la modernisation du code source et sur l’application des standards de programmation du CMS.

Les versions du projet Gutenberg inclues dans WP 6.5 contiennent 373 évolutions, 515 corrections de bugs et 65 améliorations de l’accessibilité.

Les évolutions apportées sur la version 6.5 s’étalent sur 40 composants du cœur WP. Vous trouverez dans cet article une liste des changements les plus importants.

Tous les liens de cet article pointent vers des notes de développement rédigées en anglais. L’objectif est de fournir un panorama général des changements techniques apportés par cette version, en français, puis de diriger les personnes qui souhaitent en savoir plus vers les notes de développement en anglais.

Pour en savoir plus sur la feuille de route et le calendrier de sortie de WP 6.5, consultez cette page : https://make.wordpress.org/core/6-5/

La version minimale supportée de MySQL est passée de 5.0 à 5.5.5 (ticket #60036).

Fonctionnalités majeures apportées par WP 6.5

Changements concernant l’éditeur

WordPress 6.5 implémente 10 versions de Gutenberg : 16.8, 16.9, 17.0, 17.1, 17.2, 17.3, 17.4, 17.5, 17.6 et 17.7. Vous trouverez de nouvelles fonctionnalités, de nouvelles API et de nombreuses améliorations comme par exemple l’API de gestion des interactions, la bibliothèque de polices ou l’API Block Bindings qui permet de charger dynamiquement du contenu dans les blocs.

API processeur HTML

WordPress 6.5 apporte des changements significatifs de l’API HTML. Le processeur de balises a reçu une attention particulière et un plus grand nombre d’éléments HTML sont maintenant supportés. Si vous utilisez la classe WP_HTML_Tag_Processor, alors il y a plusieurs changements dont vous devriez prendre connaissance.

Internationalisation

L’extension « Performant Translations » a été intégrée au cœur de WordPress. Ce nouveau système de gestion des traductions est bien plus rapide et bien moins gourmand en mémoire que l’ancien, grâce au nouveau format .l10n.php. Tous les formats disponibles restent supportés : le nouveau format .l10n.php, mais aussi les formats classiques basés sur des fichiers .mo et .po. Deux nouveau filtres font leur entrée dans le cœur du CMS : translation_file_format et load_translation_file.

Gestion des médias

La prise en charge du format d’image AVIF a été ajoutée dans WP 6.5. AVIF est un format moderne qui peut être jusqu’à 50 % moins lourd que JPEG, avec la même qualité d’image. Vous pouvez maintenant téléverser, modifier, redimensionner et enregistrer ce format d’image, s’il est pris en charge par votre hébergement web. La façon de travailler avec des fichiers AVIF reste la même que pour les autres formats d’images déjà supportés. En revanche si vous utilisez un réseau multisite il y a quelques spécificités à connaître. Nous vous conseillons dans ce cas de jeter un œil à la FAQ disponible sur cette note de développement.

Chargement des ressources

L’API de gestion des scripts apporte la prise en charge native des Modules JavaScript et fournit deux modules utilisables dans le cas de l’API de gestion des interactions.

qu’un

Gestion des mises à jour

L’extension « Plugin Dependencies » fait enfin son entrée dans le cœur du CMS. Elle permet de gérer les dépendances entre extensions, par exemple pour indiquer qu’une extension dépend de l’activation d’une autre extension et d’en informer les personnes chargées de l’administration du site directement sur l’interface d’admin.

Plus d’informations sur la gestion des dépendances d’extensions (cliquer pour déplier le contenu)

Les dépendances d’une extension peuvent être déclarées en utilisant le nouvel entête Requires Plugins sur le fichier principal de l’extension. L’entête doit contenir une liste de slugs d’extensions séparés par une virgule.

Exemple :

/**
* Plugin Name: Ma super extension
* Requires Plugins: une-extension-cool, une-autre-extension
*/

Conditions d’utilisation :

  • Les extensions hébergées sur WordPress.org ne peuvent que déclarer des dépendances aussi hébergées sur WordPress.org
  • Les extensions qui ne sont pas hébergées sur WordPress.org peuvent déclarer des dépendances hébergées sur WordPress.org ou n’importe où ailleurs

La déclaration de dépendances nécessite de respecter les prérequis suivants :

  • Pour les extensions déclarant une dépendance :
    • Elles ne peuvent pas être installées avant que les dépendances ne soient installées
    • Elles ne peuvent pas être activées avant que les dépendances ne soient activées
  • Pour les extensions qui sont des dépendances d’autres extensions :
    • Elles ne peuvent pas être désactivées avant que les extensions qui en dépendent ne soient désactivées
    • Elles ne peuvent pas être supprimées tant que les extensions qui en dépendent sont toujours installées sur le site

Les fonctionnalités suivantes ne sont pas encore prises en charge :

  • Gestion des versions
  • Déclaration des extensions indispensables (« Must-Use », ou « mu-plugins ») en tant que dépendances
  • Thèmes nécessitant des extensions spécifiques
  • Désactivation automatique des extensions dépendant d’autres extensions qui ont été supprimées

Un nouveau filtre wp_plugin_dependencies_slug a été introduit afin de permettre d’altérer les slugs des dépendances.

Une nouvelle classe PHP WP_Plugin_Dependencies a été introduite avec une API contenant plusieurs méthodes publiques.

L’interface de l’écran de gestion des extensions a été modifiée afin d’afficher les dépendances des extensions. L’interface des fiches des extensions qui sont dépendantes d’autres extensions a été modifiée pour afficher leurs dépendances, avec des liens vers des fenêtres modales pour les installer/activer en premier.

La redirection automatique depuis l’écran Extensions > Ajouter n’est plus disponible pour les développeuses et développeurs d’extensions, qui ne pourront donc plus directement rediriger par exemple vers un écran de configuration après activation de leur extension depuis cet écran.

Autres changements

Bibliothèques tierces

Les bibliothèques tierces suivantes ont été mises à jour :

  • getID3 a été mises à jour vers la version 1.9.23 (ticket #59683)
  • PHPMailer a été mise à jour vers la version 6.9.1 (ticket #59966)
  • @wordpress/scripts en version 17 arrête le support des versions de Node.js non maintenues. La plus vieille version de Node.js encore supportée est la version 18 (cf. note de développement : Misc Editor Dev Changes)

Thèmes

Les thèmes classiques (non basés sur des blocs) peuvent maintenant proposer l’accès aux outils d’apparence (ticket #60118).

Bibliothèque de médias

La gestion des images JEPG progressives a été activée. Un nouveau filtre image_save_progressive a été ajouté, afin de contrôler si les tailles d’images intermédiaires sont enregistrées en format progressif ou non (s’il est disponible). Par défaut, le rendu progressif est désactivé, ce qui correspond au fonctionnement passé (ticket #21668).

Prise en charge de la gestion des permaliens sur les serveurs Caddy (ticket #41877).

API REST

Un champ featured_media pour les vignettes de publications a été ajouté au point de terminaison wp/v2/media de l’API REST (ticket #41692).

Santé du site

L’identifiant du site courant a été ajouté aux informations de déboguage pour les installations multisite (ticket #60081).

Gestion des mises à jours

Lors des mises à jour multiples, une vérification des mises à jour des thèmes est maintenant effectuée afin de vérifier que le thème est bien compatible avec la version de WordPress et de PHP utilisée. Cette vérification était déjà en place pour les extensions, mais pas encore pour les thèmes (ticket #59758).

Autres modifications

Consultez la note de développement listant les autres modifications plus mineures sur WordPress 6.5. Certaines modifications peuvent vous concerner.

Nouveaux filtres et crochets d’action, ou modifications sur les hooks existants

Pour une liste complète de tous les filtres et crochets d’actions modifiés ou ajoutés sur WP 6.5, veuillez consulter le lien suivant (note : il ne sera disponible qu’après la sortie de la version) : https://developer.wordpress.org/reference/since/6.5.0/

Nouveaux filtres

Que vous développiez des thèmes ou des extensions, pensez à tester et retester votre code pour vous assurer de sa compatibilité avec ces changements. Vous pouvez utiliser l’extension « Beta Tester » sur un site de test pour vérifier la compatibilité de vos développements avec la version de test WordPress 6.5 Release Candidate 2. Nous comptons sur vous pour vérifier que votre code fonctionne correctement avec le cœur du CMS, pour le bien des millions d’utilisateurs et utilisatrices de WordPress ♥️

Ce guide a été traduit et réadapté à partir du Field Guide de WP 6.5 par Jb Audras.
Merci à Florian Prache et Jenny Dupuy pour leur relecture.