Vous venez de mettre à jour votre site WordPress et là patatras il ne fonctionne plus. Le slider ne défile plus, plus d’upload dans la bibliothèque de médias, des choses bizarres se passe dans l’admin. Parmi les origines possibles, il se peut que cela soit du à la dernière mise à jour de WordPress. Explications
WordPress et Jquery
WordPress afin de pouvoir fonctionner s’appuie (entre autre) sur une bibliothèque Javascript qui s’appelle JQuery.
Jquery est (selon wikipédia) à l’heure actuelle la bibliothèque front-end la plus utilisée au monde (plus de la moitié des sites Internet en ligne intègrent jQuery). De plus, plusieurs fonctionnalités dépendent de Jquery afin de fonctionner (slider, popup, etc) ainsi que des thèmes et des plugins.
Or, comme tout framework, Jquery évolue et monte régulièrement en version, certaines fonctions devenant obsolètes ou étant carrément supprimées. À l’écriture de cet article Jquery en est à la version 3.5.1 et donc si du code javascript utilise l’un de ces éléments obsolètes, il ne fonctionnera plus.
Pourquoi la dernière mise à jour de WordPress a cassé votre site ?
Pour pallier à cela, WordPress charge d’habitude par défaut une autre bibliothèque Javascript, qui elle permet de faire fonctionner du code basé sur une ancienne version de JQuery, et qui s’appelle jquery-migrate. Ainsi, même si le code utilisé par votre plugin ou thème était dépassé ou incompatible, il fonctionnait quand même.
Jquery migrate n’est pas une solution en soi, mais une solution temporaire car les soucis liés au code trop vieux ne sont pas résolus, quand bien même le plugin ou le thème fonctionne.
Et justement dans la version 5.5, WordPress n’inclut plus Jquery Migrate par défaut, et donc tout code trop vieux va casser votre site.
Parmi les impacts possibles on retrouve :
- Classic Editor qui ne fonctionne plus
- “Ajouter un Media” ou “Définir une image mise en avant” HS
- Des soucis dans l’éditeur de texte
- Slider bloqué qui ne défile plus
- Menu Mobile qui n’apparait plus
- La barre de recherche qui ne lance plus de recherche
Comment résoudre le souci javascript de la version 5.5 de WordPress ?
La solution tient en un seul plugin : Enable Jquery Migrate helper. Vous pouvez le télécharger ici : https://wordpress.org/plugins/enable-jquery-migrate-helper/
Il réinstallera la bibliothèque Jquery migrate, et normalement tout devrait refonctionner.
De plus il vous donne des informations concernant le code posant problème, très pratique pour identifier le plugin ou le thème posant problème, que ce soit pour mettre à jour ou modifier le code vous même si vous avez le niveau.
Si malgré l’installation de ce plugin votre problème persiste, c’est qu’il est plus profond, n’hésitez pas à me laisser un commentaire afin que j’y jette un petit coup d’oeil.
Si votre thème ou votre plugin est abandonné, et donc son code ne sera jamais mis à jour, il faut songer sérieusement à un utiliser un autre, car en plus de potentielles failles de sécurité, vous vous heurterez à ce type de problématique !