Mises à jour automatisées des plugins WordPress

Sans soucis avec les mises à jour automatiques des plugins WordPress ?

Les mises à jour automatiques des versions mineures de WordPress ont fait leurs preuves depuis des années. Mais est-ce que cela fonctionne aussi avec les mises à jour de plugins ? Et si oui, sous quelles conditions ? C'est la question que s'est posée le développeur WordPress Florian Simeth.

Ceux qui utilisent WordPress depuis longtemps le savent : les mises à jour automatiques du logiciel de base fonctionnent plutôt bien et la plupart du temps sans problème. S'il n'y avait pas les plugins. Typiquement, la plupart des responsables de sites web ont les cheveux qui se hérissent à l'idée des mises à jour automatiques des plugins. Si tu as déjà serré les dents avant de cliquer sur le bouton de mise à jour, tu sais de quoi je parle.

Tu ne peux pas être sûr que les mises à jour se déroulent correctement. Même si la mise à jour n'échoue pas en soi, mais que les erreurs se cachent quelque part, de manière invisible. La plupart des collègues que j'ai interrogés n'effectueraient pas de mises à jour automatiques des plugins, du moins pas pour tous les plugins WordPress. Mais pourquoi en est-il ainsi ?

Mises à jour automatiques des plugins : les risques

Des centaines de volontaires participent aux nouvelles versions de WordPress. Tous les projets de plugins n'ont pas cette puissance. La majorité des plugins gratuits du répertoire de plugins WordPress sont développés par une seule personne (ou peut-être une petite équipe). Cela ne veut pas dire que ces plugins sont mauvais en soi. Cependant, nous savons par le passé que ce sont généralement les plugins qui ouvrent des failles de sécurité et que leur propre instance WordPress devient ainsi une surface d'attaque pour les pirates.

On peut donc supposer que la qualité du code en souffre ou qu'elle n'est pas assez testée. Je ne veux pas expliquer plus longtemps pourquoi c'est le cas ici. Mais cela explique pourquoi je clique rapidement sur le bouton de mise à jour pour les plugins connus comme YoastSEO et pas pour les autres.

"En règle générale, on reconnaît les cas problématiques par le fait que quelque chose s'est déjà mal passé", m'a écrit le développeur WordPress Marc Nilius dans une interview par e-mail. Selon ses propres dires, il entretient actuellement environ 200 instances de WordPress et ne connaît que trop bien ses "clients".

Maintenant, Yoast a certainement une grande équipe derrière son propre plugin gratuit YoastSEO, qui est actif sur plus de cinq millions de sites WordPress. Pour la vitrine de l'entreprise, elle fait tout pour que rien ne se passe mal. Cela implique des efforts. Un effort qu'un développeur seul ne peut ou ne veut pas assumer. Alors que faire ?

Possibilités de minimiser les risques liés aux plugins

1. n'utilisez pas l'ancien Plugins

"Democratizing Publishing" est une devise pointue pour WordPress. Le fait que n'importe qui puisse facilement et rapidement mettre en place un site WordPress est une chose géniale, mais cela conduit automatiquement à ce que ces personnes veuillent à un moment ou à un autre étendre le site. Et ce, avec des plugins. Comme ils ne savent généralement pas programmer eux-mêmes, ils cherchent des solutions sur l'éternel WorldWideWeb. Et il y en a beaucoup. 

Actuellement, le répertoire de plugins de WordPress contient à lui seul près de 55 000 extensions. Tu utilises ce qui fonctionne. Sans se soucier de savoir si le plugin est en cours de développement ou s'il est compatible avec la version actuelle de WordPress. Ce n'est pas toujours correct, et cela conduit souvent à une méfiance envers les mises à jour. Car souvent, ces plugins ont tendance à ne plus fonctionner à un moment donné. Même si cela peut prendre quelques années.

Choisir des plugins WordPress

Tu veux évaluer correctement la qualité des plugins WordPress ? Alors lis l'article 13 conseils pour bien choisir les plugins WordPress. Il t'indique également ce que tu peux faire en cas de problème.

Bien sûr, il y a aussi des exemples positifs. Par exemple, derrière WooSidebars se trouve une énorme entreprise. Pourtant, le plugin WooCommerce n'a pas reçu de mises à jour depuis longtemps. Il n'a pas été testé avec les dernières versions de WordPress, mais fonctionne tout de même parfaitement dans de nombreux cas. Combien de temps encore ? Des commentaires précédents dans la zone de support indiquaient déjà une fin. Mais l'utilisateur n'en a rien su. Lors de l'installation, seul un petit message discret indique ce problème. Une chose dangereuse.

Bien sûr, au début de ta carrière de blogueur, tu n'as souvent pas d'argent pour des développements individuels. Pour ces personnes, il n'y a parfois pas d'autre alternative. Néanmoins, tu dois garder à l'esprit qu'en raison des risques de sécurité mentionnés ci-dessus, les plugins WordPress obsolètes ne doivent pas être utilisés.

Note de sécurité du plugin WordPress
Des indications sur les plugins obsolètes sur wordpress.org

2. Plugins ne vous ajustez pas

Pour économiser du temps de développement, les plugins WordPress officiels et non officiels sont souvent adaptés par les développeurs eux-mêmes. Si le numéro de version ou le nom du plugin n'est pas modifié, WordPress propose une mise à jour, même si celle-ci ne doit pas être effectuée, car elle écraserait les propres modifications.

"Customized Plugins dépend souvent trop des fonctionnalités de Theme", Marc le sait aussi. Si quelque chose change dans le Theme, le Plugin ne fonctionne plus correctement. Il y a donc de nombreux problèmes. Mais faire tout soi-même à partir de zéro, c'est-à-dire n'utiliser que ses propres développements, n'est pas non plus une véritable alternative dans ce domaine.

3. n'utilisez pas de mauvais Plugins

Qu'est-ce qu'un "mauvais" plugin ? Il n'est pas facile de répondre à cette question. Surtout pas pour les profanes. Bien sûr, on pourrait se demander si des tests automatisés sont effectués pour les nouvelles versions. Mais qui le fait ? Beaucoup d'utilisateurs de WordPress ne savent même pas que c'est possible. De plus, ces tests (s'ils sont effectués) n'ont souvent rien à voir avec des situations réelles.

Ce qui est compréhensible du point de vue des développeurs. Qui teste chaque plugin avec chaque thème WordPress possible ? Ou chaque plugin avec chaque autre plugin ? Ce n'est pas possible. On ne peut pas non plus faire confiance à ceux qui développent des plugins WordPress.

Une fois de plus, il est parfois impossible de ne pas utiliser les "mauvais" plugins, car on ne les reconnaît pas toujours. Bien que l'évaluation de la qualité soit le premier obstacle pour beaucoup d'utilisateurs, il faut au moins tester activement les nouveaux plugins avant de les intégrer sur une page en direct. Mais nous y reviendrons dans un instant.

"*" indique les champs requis

Je souhaite m'abonner à la newsletter pour être informé des nouveaux articles de blog, des ebooks, des fonctionnalités et des nouvelles de WordPress. Je peux retirer mon consentement à tout moment. Merci de prendre connaissance de notre politique de confidentialité.
Ce champ sert à la validation et ne doit pas être modifié.

Pourquoi les mises à jour du plugin automatique échouent-elles ?

Le fait est que tu ne peux pas ne pas utiliser les plugins WordPress. Les problèmes mentionnés ci-dessus existeront toujours. Il faut donc trouver une autre solution. La question que l'on doit se poser est donc : "Comment faire pour que les plugins WordPress soient mis à jour automatiquement malgré tous les problèmes? Et cette question mène inévitablement à la suivante : "Qu'est-ce qui pourrait mal tourner ?"

Voici quelques possibilités :

  1. PHP-Fatal-Error : Le site web ne fonctionne pas du tout à cause d'une erreur grave.
  2. Le Plugin ne fonctionne pas (plus) avec les autres Plugins et/ou le Theme. Cela se manifeste de plusieurs façons :
    a) les fonctions ne sont plus disponibles ou
    b) la mise en page change dans le frontend.
  3. L'absence de rétrocompatibilité rend le retour en arrière difficile.
  4. La base de données est si importante qu'une sauvegarde prendrait beaucoup de temps.

Solutions pour réussir les mises à jour des plugins

Reconnaître le mauvais Plugins

Commençons par les utilisateurs:internes. Comment pourraient-ils reconnaître un "mauvais" plugin ? Comme le profane ne peut pas vérifier si la qualité du code est bonne, il faudrait créer un système qui puisse le faire. La question est : est-ce que cela fonctionnerait ? Et la réponse est clairement : oui !

La bonne nouvelle : une petite équipe WordPress travaille déjà sur un tel système. Elle s'appelle Tide. La vision de Tide est de réaliser des tests de qualité automatisés pour tous les plugins et thèmes WordPress et de rendre les résultats de ces tests visibles à la fois pour les auteurs et pour les utilisateurs de ces plugins et thèmes.

WordPress Tide
Tests de qualité avec Tide pour WordPress

Il n'est pas encore terminé, mais à l'avenir, Tide aidera les profanes à mieux reconnaître le type de plugins WordPress qu'ils installent. En attendant, il faut s'en tenir aux métadonnées des plugins qui sont affichées sur wordpress.org dans le répertoire des plugins pour chaque plugin individuel :

  1. La date de la dernière mise à jour. Une mise à jour fréquente peut indiquer un processus de développement actif. Dans la plupart des cas, les développeurs s'occupent également de la correction des erreurs.
  2. Nombre d'installations. Un nombre très élevé n'indique pas seulement la popularité, mais peut aussi être un indice que les auteurs gagnent de l'argent avec le plugin (par exemple via une version Pro). Cela crée une certaine pression de la part du fabricant. Il a certainement intérêt à ce que le plugin gratuit fonctionne lui aussi sans erreur.
  3. Testé jusqu'au. Il s'agit là aussi d'un numéro de version qui peut être adapté à tout moment par le fabricant, sans que cela doive être prouvé par un tiers. Cependant, un numéro de version actuel est une indication que le plugin est régulièrement mis à jour.
  4. Version de PHP. C'est bien que les développeurs continuent à soutenir les numéros de version bas de PHP, mais une version plus élevée serait plus sûre.

Tests automatisés des navigateurs

Maintenant, cela devient un peu plus difficile. Surtout pour ceux qui n'ont aucune connaissance en programmation. Ceux qui dépendent de fonctions importantes devraient les tester régulièrement, de préférence de manière automatisée.

Puppeteer est une bibliothèque NodeJS qui fournit une API de haut niveau pour contrôler le navigateur Chrome via le protocole DevTools. Puppeteer fonctionne sans tête par défaut, mais peut être configuré pour ouvrir le navigateur afin que vous puissiez regarder ce qui se passe.

Tests fonctionnels

Les cas d'application de ces tests sont nombreux. Si tu as une boutique en ligne avec WooCommerce , tu peux ainsi vérifier si les produits peuvent encore être ajoutés au panier. Ou si les formulaires peuvent encore être envoyés.

Bien entendu, tous les cas ne peuvent pas être couverts. Toutefois, un petit test automatique est dans la plupart des cas plus efficace que le simple contrôle visuel. Après tout, on ne peut pas toujours tester toutes les fonctions d'une page après chaque petite mise à jour. Surtout si elle est très étendue.

Test de régression visuelle

Même une "inspection visuelle" pourrait déjà être automatisée avec les moyens actuels. Cela fonctionne relativement facilement avec BackstopJS, par exemple. La configuration se fait rapidement via un fichier JSON. Un backstop test dans la console suffit pour lancer la comparaison. Pour finir, l'outil ouvre une fenêtre de navigateur et affiche les différences.

Comme BackstopJS fournit également un rapport détaillé, lisible par machine, avec une valeur de distinction en pourcentage, vous pourriez, par exemple, être averti par courrier électronique lorsqu'un changement important est intervenu dans la mise en page.

Retour en arrière

Disons que toutes les mises à jour ont été effectuées et que les tests automatiques ont échoué. Que faire ? Bien entendu, les sauvegardes peuvent être importées automatiquement. Mais cela ne fonctionne que dans trois cas : 

  1. Si l'hébergeur dispose d'une interface qui permet de déclencher automatiquement un rollback.
  2. Ou si tu as un accès SSH.
  3. Et si la sauvegarde est suffisamment petite. Sinon, dans le pire des cas, la relecture prend plusieurs heures.

De nombreux développeurs savent très bien que la plupart de ces choses ne sont pas possibles. Soit l'accès SSH n'est pas disponible, soit il y a des délais d'attente à cause du manque de ressources sur le serveur.

Hébergement WordPress infogéré

Dans certains cas, l'hébergement géré de WordPress te décharge de beaucoup de travail. Notre livre électronique 13 avantages de l'hébergement géré de WordPress te montre comment tu peux gagner du temps pour tes projets avec WordPress et WooCommerce .

D'autres solutions ?

Bien sûr, mon point de vue n'est qu'un parmi d'autres. Il existe d'autres solutions, souvent plus chères. Par exemple, au lieu de faire une sauvegarde après coup, il est possible de faire une copie du site avant(concept de staging comme pour Raidboxes, en plus des sauvegardes WordPress) et d'y effectuer toutes les mises à jour et tests possibles. Si le test est positif, les mises à jour peuvent également être appliquées sur la page en direct. Bien sûr, cela se fait (la plupart du temps) de manière entièrement automatique et sans que les cheveux ne se dressent sur la tête.

Une autre idée serait de simplement faire créer des pages statiques par WordPress. Le site serait alors un peu plus indépendant du noyau réel. Des plugins existent déjà depuis huit ans dans ce but : Par exemple WPStatic. Mais là encore, cela ne fonctionne pas pour tous les cas d'utilisation, et surtout pas pour les sites très dynamiques comme les boutiques en ligne.

Ma conclusion

Comme on le fait, on le fait mal, n'est-ce pas ? Non, tout dépend de ton propre site, de tes souhaits et bien sûr de ton budget. Si tu ne gères pas de sites critiques et que tu es d'accord avec le fait qu'un site web fasse des erreurs, tu t'en sors bien avec les mises à jour automatiques.

Avec Raidboxes , tu as également la possibilité de Fully Managed Le module complémentaire permet d'activer les mises à jour automatiques des plugins et des thèmes. Dans les paramètres de ton BOX , tu peux également exclure des plugins et des thèmes individuels avec lesquels tu as déjà eu des problèmes des mises à jour automatiques.

Il est probable que les mises à jour automatiques des plugins se fassent sans problème pour la plupart des petits sites. Ceux qui ont des sites plus grands disposent généralement de plus de moyens financiers pour prendre les mesures nécessaires. Tous ceux qui se trouvent entre les deux doivent trouver leur propre solution.

Tes questions sur les mises à jour des plugins

Tu as des questions pour Florian ou pour l'article ? N'hésite pas à utiliser la fonction de commentaire. Tu veux être informé des autres articles sur WordPress et WooCommerce ? Alors suis-nous sur LinkedInFacebook, Twitter ou via notre newsletter.

As-tu aimé cet article ?

Tes évaluations nous permettent d'améliorer encore plus notre contenu.

Laisse un commentaire

Ton adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués d'un *.