Comment déboguer un post sur WP affichant un nombre de commentaires incorrect

Je viens de remarquer un post sur notre site WP qui s’affichait sans commentaire, alors que je savais qu’il en avait bien reçu un dans Discourse. J’en ai laissé un autre sur ce sujet, mais il n’est pas apparu non plus. Cependant, d’autres posts reçoivent des commentaires sans problème. Je ne vois rien d’étrange ou de particulier dans ce post.

Y a-t-il quelque chose que je puisse faire pour déboguer le problème ?

Assurez-vous que les commentaires sur le message répondent aux critères que vous avez définis dans l’onglet « Options de commentaire » du plugin. S’il semble que les commentaires du message devraient être récupérés vers WordPress, vous pouvez déboguer le problème en activant l’option d’écran « Champs personnalisés » pour les messages sur votre site :

Une fois cela fait, vous verrez une liste de métadonnées de message en bas de l’écran d’édition. Assurez-vous que les champs discourse_permalink et discourse_topic_id correspondent au sujet Discourse associé. Si ces champs sont absents, il est possible que le message ait été délié de Discourse. Vous pouvez relier à nouveau un message délié en sélectionnant le bouton radio « Lier à un sujet existant » dans la boîte de métadonnées Discourse.

Merci,

Cela devient encore plus étrange. Je viens d’assister à l’arrivée d’un commentaire sur un tout nouveau post. La page d’accueil de notre site WP a immédiatement affiché un commentaire sur ce post. Jusqu’ici, tout va bien. Ensuite, en cliquant sur le post, les informations en haut indiquaient qu’il y avait un commentaire.

J’ai cliqué sur le nombre de commentaires pour faire défiler la page jusqu’à l’endroit approprié, mais au lieu d’afficher « Rejoignez la discussion », il était indiqué « Lancez la discussion ». (Nous n’affichons pas réellement les commentaires, seulement leur nombre et le lien vers notre instance Discourse.) J’ai pensé qu’une actualisation de la page réglerait le problème, mais au contraire, après avoir actualisé la page, il était de nouveau indiqué qu’il y avait zéro commentaire. La page d’accueil est également revenue à zéro.

J’ai vérifié les champs discourse_topic_id et discourse_permalink, et ils sont tous les deux corrects. En revanche, les autres champs liés à Discourse ne sont pas très clairs pour moi.

discourse_comments_count indique « 0 »

Voici ce que contient discourse_comments_raw :

{"id":1399,"posts_count":2,"filtered_posts_count":0,"posts":[],"participants":[{"id":11,"username":"nathan","name":"Nathan ","avatar_template":"https://www.ourdiscourse.com/user_avatar/www.ourdiscourse.com/nathan/{size}/182_2.png"},{"id":103,"username":"Zak","name":"Zak","avatar_template":"https://www.ourdiscourse.com/user_avatar/www.ourdiscourse.com/zak/{size}/652_2.png"}]}

Par ailleurs, je n’arrive pas à comprendre ce que devrait être discourse_post_id. En me basant uniquement sur le nombre à 4 chiffres qu’il contient, je m’attendrais à ce qu’il corresponde à l’ID du post WordPress, mais ce n’est pas le cas. Que devrait-il représenter ?

Si votre sujet Discourse est public, pouvez-vous m’envoyer un lien par MP ?

Avez-vous activé l’option « Publier en tant que sujets non répertoriés » de WP Discourse ? La différence entre posts_count et filtered_posts_count dans les métadonnées discourse_comments_raw suggère qu’il y a deux petits messages d’action dans le sujet. Il y a un problème avec la fonction de rafraîchissement du webhook de WP Discourse lorsqu’il existe une divergence entre posts_count et filtered_posts_count. Je vais m’en occuper, mais je ne pense pas que cela soit lié au problème que vous rencontrez avec un message qui ne reçoit pas de commentaires.

Pour le problème du message qui ne reçoit pas de commentaires, voulez-vous dire que le lien vers son sujet Discourse n’est pas affiché, ou est-ce que le problème est que le lien affiche « commencer la discussion » au lieu de « rejoindre la discussion » ?

C’est ça.

C’est logique si le nombre de commentaires est zéro. Je ne m’inquiéterais pas pour cela. C’est juste ce qui m’a frappé et qui m’a poussé à rafraîchir la page, remarquant ainsi que le nombre redescendait à zéro.

Ah, et pour répondre à votre question…

Non.

Quelle est la valeur correcte du champ « wpdc_sync_post_comments » ?

Je continue d’avoir du mal avec ce problème.

Je suis allé sur un sujet qui ne contenait qu’un seul message. Le nombre de commentaires dans l’interface publique de WordPress devrait être « 1 », mais il affichait 0. La valeur de wpdc_sync_post_comments était « 0 ». Je suppose qu’il s’agit d’un indicateur Vrai/Faux et qu’il devrait être défini sur 1, alors je l’ai modifié et j’ai enregistré le message. Après avoir actualisé l’interface publique de WordPress, aucun changement n’était visible, alors j’ai publié un nouveau message sur le sujet Discourse et j’ai immédiatement actualisé la page WordPress. Le nombre de commentaires est correctement passé à « 2 ». J’ai immédiatement actualisé à nouveau la page et il est retombé à « 0 » ! Dans l’écran d’édition, j’ai constaté que wpdc_sync_post_comments avait été réinitialisé à 0 et

discourse_comments_count == 0
discourse_comments_raw ===
{"id":1451,"posts_count":3,"filtered_posts_count":1,"posts":[],"participants":[ (coupé)

Un autre message présente les valeurs suivantes :
discourse_comments_count == 3
discourse_comments_raw ===
{"id":1447,"posts_count":17,"filtered_posts_count":4,"posts":[],"participants": (coupé)

Merci pour les détails !

Lorsque le champ est défini sur 1, les commentaires seront synchronisés lors du prochain chargement de la page. Une fois les commentaires synchronisés, la valeur de wpdc_sync_post_comments sera réinitialisée à 0.

En examinant les métadonnées que vous avez partagées, il semble que le plugin soustrait 1 au nombre de commentaires alors qu’il ne devrait pas le faire. J’ai été en voyage ces derniers jours. Je m’en occuperai plus en détail dès que je serai de retour au travail demain.