Entrepôt 1.2.0 vous donne la main pour gérer les versions de vos extensions #WordPress

Photo de Ant Rozetsky sur Unsplash

La mise à jour manuelle d’une extension WordPress est une opération qui n’est toujours pas possible dans le logiciel qui motorise un peu moins de 3 sites Internet sur 10 à ce jour. La feuille de route de l’imminente version 4.9 l’avait intégrée mais faute d’énergie contributive, cette fonctionnalité qui peut paraître basique a été repoussée au jalon 5.0.

Bien entendu, il existe probablement des extensions sur le répertoire officiel des extensions qui comblent cette lacune. Toutefois, il peut paraître étrange qu’un logiciel capable de mettre à jour automatiquement ses versions mineures et semi-automatiquement ses versions majeures et les extensions de son parc n’intègre pas 15 ans après sa naissance cette fonctionnalité d’apparence beaucoup plus simple.

Aussi, étant donné que le principal objet de l’Entrepôt est de simplifier l’installation et la mise à jour des extensions WordPress que j’héberge sur GitHub.com (et de celles de ceux qui veulent m’y rejoindre, comme l’ami Thomas), j’ai pensé que je ne pouvais pas ignorer ce besoin si basique d’autant que j’y avais déjà été confronté en 2011.

Une gestion des versions de toutes vos extensions WordPress grâce à l’Entrepôt.

Alors que la plupart du temps, c’est en oeuvrant sur mes extensions que je trouve des anomalies ou des améliorations possibles et que je propose des patchs aux core committers du projet WordPress, cette fois-ci, j’ai fait l’inverse. J’ai d’abord contribué au ticket #9757 avant d’intégrer une fonctionnalité équivalente dans l’Entrepôt.

Je crois que plus qu’un dispositif manuel de mise à jour des extensions WordPress, les utilisateurs ont besoin de disposer d’une maîtrise simplifiée des versions de ces dernières. Bien sûr ils doivent pouvoir mettre à niveau une version, il me semble également important de leur laisser la possibilité de rétrograder.

En effet, l’abandon d’une fonctionnalité ou encore son exclusion vers une autre extension (c’est arrivé dans la 4.9 !) ou encore le légendaire « Your upgrade broke my theme » sont trois exemples de cas de figure, pour lesquels il me semble raisonnable qu’un utilisateur puisse faire marche arrière pour se donner un temps supplémentaire d’adaptation. Attention toutefois à ne pas s’éterniser, je vous recommande de mettre à jour au plus tôt pour des raisons de sécurité évidente.

L’interface de gestion des versions de vos extensions.

Voilà pourquoi dans la 1.2.0 de l’Entrepôt, une interface accessible depuis un nouveau sous menu du menu des Extensions de l’administration de WordPress simplifiera la gestion des versions de vos extensions. J’utilise le futur car il vous faudra attendre la publication de la 4.9 de WordPress pour en profiter pleinement (j’utilise un JavaScript très utile qui y sera introduit : api-request.js).

Des restrictions sur l’éditeur du code des extensions de WordPress pour le cantonner à une utilisation plus appropriée.

La version 4.9 de WordPress embarquera des améliorations de sa fonctionnalité d’édition « à chaud » du code source des extensions installées sur votre site WordPress. Le maintien de cette fonctionnalité qui a cristallisé pas mal de controverses se justifierait par son pouvoir de transformer les utilisateurs WordPress en « développeurs WordPress« .

Abracadabra!

Il y a effectivement une amélioration. Désormais lorsqu’un utilisateur WordPress voudra éditer le code source d’une extension il verra ce message tant qu’il n’aura pas cliquer sur « Je comprends ».

Je souhaite de tout mon coeur que beaucoup d’utilisateurs, grâce à ce message magique, se découvre une vocation de « développeurs » et contribuent à leur tour au maintien de WordPress et de ses extensions.

Tout ce qui est écrit dans le premier paragraphe est intéressant, je me permets simplement de rajouter une mise en garde supplémentaire par rapport à la notion de perte des modifications apportées suite à l’application des mises à jour. Malheureusement, certains ont leur instinct de conservation qui refait surface et donc pour faire survivre absolument leurs magnifiques modifications, ils décident de ne plus appliquer ces fameuses mises à jour. Résultat, ils augmentent énormément leur vulnérabilité en matière de sécurité. C’est une erreur : mettez à jour au plus tôt et ce d’autant plus si c’est une mise à jour de sécurité.

D’autre part, il me semble qu’une des particularités majeures d’un « développeur WordPress » est d’utiliser la Plugin API à la fois pour permettre la personnalisation de ses oeuvres mais aussi pour étendre celles des autres. Et pour le coup on n’a pas besoin de modifier le code source des autres grâce à elle! Il est regrettable qu’il n’en soit pas question ici.

Selon moi, en l’état*, cette fonctionnalité n’est approprié que dans un seul cas : la possibilité d’éditer les fichiers de personnalisation que certaines extensions utilisent (ex: bp-custom.php pour BuddyPress permet de définir des constantes ou des hooks spécifiques à cette extension) ou la possibilité d’éditer les extensions créés par l’utilisateur (devenu développeur!) pour répondre au même besoin de personnalisation.

Illustration du marqueur à intégrer pour autoriser les modifications à chaud.

Voilà pourquoi la 1.2.0 de l’Entrepôt restreindra l’édition aux seules extensions ou fichiers de personnalisation intégrant ce marqueur d’entête spécifique /* Allow File Edits: true */. L’exception qui confirme cette règle est « Hello Dolly », vous pourrez toujours l’éditer 🙂

* Idéalement, cet éditeur devrait permettre, grâce au dispositif de comparaison intégré aux révisions des articles, de constituer des patchs pour faciliter la contribution et le support.

Deux nouvelles extensions BuddyPress rejoignent l’Entrepôt !

Bienvenue aux petits nouveaux!

Vous utilisez « Alternative Public Group Control » ou « Profil de Groupes » ? Si oui vous pourrez dormir sur vos deux oreilles et profiter des notifications de mise à jour et de la simplification de leur application grâce à l’Entrepôt.

De nouveaux liens pour informer sur vos extensions référencées dans l’Entrepôt.

Aux différents endroits où sont listées les extensions de l’Entrepôt dans l’Administration de WordPress, cliquer sur le lien « Afficher les détails » permet de charger le fichier README.md de l’extension dans une nouvelle fenêtre modale. Cette modale intégrera désormais de nouveaux liens paramétrables depuis le JSON de l’extension afin d’informer sur :

  • l’historique des versions,
  • le dispositif disponible pour récompenser l’auteur d’éventuelles donations,
  • le wiki de votre extension

Si vous êtes un auteur d’extensions hébergées sur GitHub (et pas sur WordPress.org), et que vous souhaitez simplifier la vie de vos fidèles utilisateurs, voici comment rejoindre l’Entrepôt.

Restez à jour !

Chers utilisateurs, si vous avez déjà installé l’Entrepôt, vous devriez recevoir la notification de la disponibilité de la 1.2.0 dans votre administration WordPress. Vous ne l’utilisez pas encore ?? Ruez-vous sur son lien de téléchargement 🏃🏻‍♀️

En route pour la version 1.3.0 !

Pour ce prochain jalon majeur, je prévois de m’intéresser aux thèmes. J’ai en effet dernièrement créer un thème enfant de TwentySeventeen et nos thèmes sur GitHub méritent aussi de s’installer et se mettre à jour beaucoup plus facilement. Il parait que la version 4.9 de WordPress facilite la mise en place de sources alternatives au répertoire officiel des thèmes de WordPress depuis le Customizer, ça tombe bien !