Échec de la mise à jour ou de la publication
Récemment, je créais un nouveau article, et j'ai soudainement commencé à recevoir l'erreur suivante.
La mise à jour a échoué. La réponse n'est pas une réponse JSON valide.
Erreur lors de la mise à jour d'une page
Après cela, le serveur a semblé expirer.
Désactiver l'éditeur de blocs Gutenberg
Lorsque j'ai fait des recherches en ligne sur ce problème, j'ai constaté qu'il était assez courant. De nombreuses personnes ont signalé cette erreur. Certaines personnes ont suggéré de revenir à l'éditeur classique. Je n'ai pas voulu le faire car il s'agit d'une solution de contournement, pas d'une solution.
S'agit-il de Permalinks ?
Certains disaient qu'il s'agissait d'un problème de permalien, et qu'il suffisait de réenregistrer ses permaliens. Bien que cela ait été une solution pour certains, j'ai essayé de changer mes permaliens et dans mon cas, cela n'a fait aucune différence. Le problème a persisté.
D'autres personnes disaient que la sauvegarde des permaliens n'était pas suffisante et qu'il fallait vérifier les paramètres des permaliens dans le fichier .htaccess. Mais je suis hébergé sur nginx et je n'ai pas de fichier .htaccess.
J'ai contacté mon hébergeur - GridPane - qui m'a répondu que mes fichiers nginx étaient déjà correctement configurés et que je ne pouvais rien ajouter pour améliorer le traitement des permaliens.
Ils m'ont suggéré de vérifier le journal des erreurs de nginx et, s'il n'y avait rien, de désactiver tous mes plugins et de les réactiver un par un pour voir qui était le coupable.
S'agit-il d'un plugin ?
J'ai donc désactivé tous les plugins installés sur mon site, et utilisé un thème WP gratuit. J'ai vérifié que je pouvais mettre à jour la page - et c'était le cas. J'ai ensuite réactivé tous les plugins, un par un. Je ne pensais pas que ce serait un problème de plugin, mais je devais vérifier.
Il s'avère que c'est le plugin Gravity Forms qui a causé le problème pour moi, ou peut-être une combinaison de Gravity Forms avec un autre plugin. Qui sait ? Même si c'est bien mon problème, ce n'est pas mon rôle de déboguer le code des autres, sauf si je n'ai pas d'autre choix que de le faire.
Le fait est que si je désactivais Gravity Forms, le problème disparaissait. Dès que le Gravity Forms était réactivé, le problème revenait. La version que j'utilisais était, je crois, la plus récente à l'époque : 2.4.19.
Si, comme moi, vous avez essayé l'approche par permalien mais que cela n'a rien changé, et que votre hôte est déjà configuré correctement, il n'y a rien à gagner, alors vous avez peut-être un problème de plugin.
Le plugin à l'origine de votre erreur n'est peut-être pas Gravity Forms - il peut s'agir de n'importe quel plugin. La seule façon de le savoir est d'utiliser un thème inoffensif, de désactiver tous vos plugins et de les réintroduire, un par un, jusqu'à ce que le problème réapparaisse.
J'ai signalé le problème aux développeurs de Gravity Forms au cas où ils auraient besoin de le savoir.
Mise à jour du support de Gravity Forms
J'ai écrit à Gravity Forms pour lui demander si c'était un problème connu avec la version 2.4.19 et s'ils avaient une solution. Mais entre-temps, j'ai découvert que la version 2.4.19 n'était pas la dernière version. La dernière version était en fait 2.4.19.3. Mais pour une raison quelconque, elle n'a pas été automatiquement notifiée comme mise à jour sur mon site, bien que je possède une licence de développeur valide.
Le service d'assistance de Gravity Forms m'a répondu que l'erreur n'était pas causée par leur plugin et que, non, ils n'avaient pas codé de solution spécifique pour ce problème dans une mise à jour.
Tout ce qui m'importait dans ce cas était que le problème disparaisse, et la désactivation et la réactivation des plugins m'ont permis de trouver ma propre solution pour pouvoir continuer à travailler. Mais si vous souhaitez obtenir une aide réelle de la part d'une équipe de support, il est préférable de fournir un problème reproductible sur un site de test auquel ils peuvent se connecter, qui montre catégoriquement que leur plugin est en cause. Sinon, vous obtiendrez bien sûr la réponse "pas notre problème". LOL.