Le plugin WP Discourse se comporte bizarrement

Les nouveaux posts créent un nouveau sujet dans Discourse, mais le lien pour démarrer la conversation n’apparaît pas et j’obtiens à la place :

Les commentaires ne sont pas actuellement disponibles pour ce post.

Si je vais sur le plugin, j’obtiens aussi cette erreur ? Pourtant, il est connecté car il crée au moins des sujets.

Vous n’êtes pas connecté à Discourse. Si vous configurez le plugin, ce message devrait disparaître une fois le formulaire de cette page complété.

J’ai également remarqué cela sur Discourse

Une requête API utilisant une méthode d’authentification obsolète a été détectée. Veuillez la mettre à jour pour utiliser l’authentification basée sur les en-têtes.

Avez-vous mis à jour wp-discourse récemment ?

Oui, je pense que tout est à jour…

J’ai aussi remarqué cela dans l’article de blog

Une erreur s’est produite lors de la récupération de la liste des catégories depuis Discourse

J’ai désactivé le plugin, recréé le webhook (qui est vert) et généré une nouvelle clé API. Cela n’a pas aidé.

2.4.0.beta7

(58b5d1434b)

Wordpress 5.3

Plugin 1.9.7

Cela fonctionnait-il avant que vous n’ayez mis à jour WordPress vers la version 5.3 hier ?

Le plugin WP Discourse ne devrait pas déclencher cet avertissement. Toutes les requêtes API provenant du plugin utilisent une authentification basée sur les en-têtes. Quoi qu’il en soit, il s’agit simplement d’un avis de dépréciation. L’authentification des requêtes API avec des paramètres d’URL continuera de fonctionner dans un proche avenir.

Pouvez-vous vérifier que l’utilisateur que vous avez saisi dans le paramètre « Nom d’utilisateur de publication » du plugin est toujours actif sur Discourse ? Pour ce faire, accédez à la page d’administration de l’utilisateur et consultez la ligne « Activé » de la section « Permissions ». Si « Activé » est défini sur « Non », cliquez sur le bouton « Activer le compte ».

Cela fonctionnait auparavant, et c’était avant la mise à niveau, mais je ne peux pas affirmer que les deux sont liés.

C’est la seule requête API que j’ai… mais l’utilisateur a été désactivé… et cela a résolu le problème, merci beaucoup - hmm, pourquoi cela serait-il arrivé ? Merci beaucoup.

Le message d’alerte a peut-être été créé avant que vous n’ayez mis à jour le plugin vers la version 1.9.7. Je vais surveiller ce message pour m’assurer qu’il n’est pas généré par la version actuelle du plugin.

Cela est probablement lié au paramètre du site Discourse invalidate inactive admin email after days. Il y a eu des modifications récentes qui pourraient affecter les comptes utilisés uniquement pour se connecter à l’API. Je crois que ce problème a été corrigé dans une mise à jour récente.

Pour info, cet utilisateur a été désactivé à nouveau. Je passe cependant à la dernière version de Discourse.

Désactivé – à nouveau réactivé et mis à jour vers la dernière version de Discourse…

Il semble étrange que l’utilisateur ait été à nouveau désactivé. À ma connaissance, réactiver l’utilisateur en cliquant sur le bouton Activer devrait maintenir l’utilisateur actif pendant la période de jours définie par votre paramètre de site « invalider l’e-mail d’administrateur inactif après X jours ». Pouvez-vous vérifier ce paramètre pour vous assurer qu’il est défini sur sa valeur par défaut de 365 jours ? De plus, faites-nous savoir si l’utilisateur est à nouveau désactivé.

J’ai vérifié que le paramètre est bien à 365. J’ai noté que le compte était de nouveau inactif. Je l’ai réactivé et mis à jour Discourse (à nouveau).

Je regarde actuellement le code qui invalide les comptes administrateur inactifs. Notez qu’il est possible de contourner l’invalidation des e-mails des comptes administrateur inactifs en définissant invalidate inactive admin email after days à 0. Cependant, je ne pense pas que ce soit la solution idéale.

Les e-mails des administrateurs ne devraient pas être invalidés si la clé API de l’utilisateur administrateur a été utilisée dans la période définie par le paramètre invalidate inactive admin email after days. Est-il possible que, sur WordPress, vous ayez défini le nom d’utilisateur de publication sur le compte administrateur qui est désactivé, mais que vous utilisiez la clé API « Tous les utilisateurs » pour la clé API ? Si c’est le cas, il est logique que le compte administrateur continue d’être invalidé.

À moins que vous n’ayez une raison de ne pas utiliser la clé API « Tous les utilisateurs » sur WordPress, vous pouvez modifier les valeurs configurées dans les paramètres de connexion WP Discourse pour utiliser votre clé API « Tous les utilisateurs » et le nom d’utilisateur de votre utilisateur système. Ce nom d’utilisateur est par défaut « system ».