Ça y’est, j’ai décidé de rendre optionnel le chargement de la blibliothèque jQuery du côté public du blog. Il faudra donc activer cette option si jamais vous utilisez un plugin qui en a besoin — du côté public seulement, jQuery sera de toute façon chargé côté administration.
Cependant, comme je suis magnanime, cette option sera active par défaut donc ça devrait assurer la compatibilité avec les installations existantes.
Notez que ça impacte les thèmes qui s’appuient sur les jeux de templates, en particulier sans redéfinir le fichier _head.html
. Cela dit les thèmes existants ne sont pas rendus obsolètes, ça continuera à fonctionner, quitte à charger la bibliothèque pour rien.
Parce qu’au passage, j’ai fait en sorte que l’option « Se souvenir de moi » sur le formulaire de commentaire ne requiert plus jQuery.
Pour info, d’après ce que j’ai vu de mon côté (mais ce n’est pas exhaustif), les plugins — parmi ceux que je gère — nécessitant jQuery côté public sont :
- lightbox
- magnific-popup
- bigfoot
- twenty-twenty
Soit pas tant que ça finalement, d’ailleurs ça vaudrait le coup que je me penche sur ceux-ci pour voir si on peut faire sauter la dépendance !
Donc pour résumer, la prochaine 2.16 devrait permettre, pour certains blogs, d’avoir des pages plus légères qu’auparavant, c’est toujours ça de bon pour la planète \o/
Par ailleurs, si la bibliothèque jQuery est chargée côté public, ça sera toujours la plus récente disponible qui le sera, histoire d’éviter les failles de sécurité et les bugs des anciennes versions.
La question qui reste en suspens à ce jour : « Est-ce qu’on fait le ménage au moment de la mise à jour en supprimant les vieilles versions de jQuery ou pas ? »
1 De Biou -
C’est classe! Merci :)
2 De Tomek -
C’est une évolution qui va dans le bon sens, au moment où on voit le poids des sites toujours grossir avec toujours plus de requêtes, notamment en JS.
Clap clap !
3 De Philippe -
Certains thèmes sont basés sur une version un peu ancienne de Bootstrap. La version 3 (bootstrap.min.js) n’est pas compatible avec jQuery 3.4.1.
Si tu vires les versions 2.x de jQuery, il me faudra adapter lesdits thèmes (famille Grayscale)… Je ne sais pas si ce sera simple.
Bon, ça ne serait pas de ta faute si ces thèmes cassent, mais de la mienne pour n’avoir pas sorti de version plus récente ;) et je suis donc comme toujours favorable à ce que le chef fasse comme il l’entend :D, on s’adaptera.
4 De Franck -
Philippe j’ai pris le parti de faire le ménage mais rien ne t’empêche, une fois la mise à jour effectuée, de remettre une ancienne version de jQuery dans inc/js/jquery/ta-version/ et de l’inclure dans ton thème via une insertion directe du genre :
A priori ça devrait fonctionner, voire même inclure la version de jQuery qui t’intéresse dans ton thème et l’inclure directement.
5 De Philippe -
Oui tu as raison, mais je vais plutôt essayer de mettre à jour ces thèmes avec Bootstap 4, ce qui permettra d’utiliser la dernière version de jQuery, sans bidouilles côté utilisateur ;)