Cómo depurar una publicación en WP que muestra un número de comentarios incorrecto

Acabo de notar un post en nuestro sitio de WP que aparecía sin comentarios, pero sabía que sí recibió uno en Discourse. Dejé otro comentario en ese tema y tampoco apareció. Sin embargo, hay otros posts que reciben comentarios sin problemas. No veo nada extraño o especial en ese post.

¿Hay algo que pueda hacer para depurar el problema?

Asegúrate de que los comentarios en la publicación cumplan con los criterios establecidos en la pestaña Opciones de comentarios del plugin. Si parece que los comentarios de las publicaciones deberían extraerse a WordPress, puedes depurar el problema activando la opción de pantalla ‘Campos personalizados’ para publicaciones en tu sitio:

Una vez hecho esto, verás una lista de metadatos de la publicación en la parte inferior de la pantalla de edición. Asegúrate de que los campos discourse_permalink y discourse_topic_id coincidan con el tema de Discourse asociado. Si estos campos no están presentes, es posible que la publicación se haya desvinculado de Discourse. Puedes volver a vincular una publicación desvinculada seleccionando la opción de entrada de radio ‘Vincular a tema existente’ en el cuadro de metadatos de Discourse.

Gracias,

Se pone más extraño. Acabo de ver cómo llegaba un comentario en una publicación totalmente nueva. La página de inicio de nuestro sitio de WP mostró inmediatamente un comentario en esa publicación. Hasta ahora, todo parecía correcto. Luego, al hacer clic en la publicación, la información en la parte superior indicaba que había un comentario.

Hice clic en el número de comentarios para desplazarme hasta la sección correspondiente de la página, pero en lugar de decir “Únete a la discusión”, decía “Inicia la discusión”. (En realidad no mostramos los comentarios, solo la cantidad de ellos y el enlace a nuestra instancia de Discourse.) Pensé que una actualización de la página lo solucionaría, pero al refrescar la página, volvió a decir que había cero comentarios. Y la página de inicio también se actualizó de nuevo a cero.

Revisé el discourse_topic_id y el discourse_permalink, y ambos son correctos. Sin embargo, los demás campos de Discourse no tienen mucho sentido para mí.

discourse_comments_count dice ‘0’

Esto es lo que hay en 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"}]}

Además, no logro entender qué se supone que debe ser discourse_post_id, pero solo viendo el número de 4 dígitos que contiene, habría esperado que fuera el ID de la publicación de WP, pero no lo es. ¿Qué se supone que debe ser?

Si tu tema de Discourse es público, ¿puedes enviarme un enlace por mensaje privado?

¿Tienes activada la opción de WP Discourse “Publicar como temas no listados”? La diferencia entre posts_count y filtered_posts_count en los metadatos de discourse_comments_raw sugiere que hay dos pequeñas publicaciones de acción en el tema. Existe un problema con la función de actualización del webhook de WP Discourse cuando hay una discrepancia entre posts_count y filtered_posts_count. Esto es algo que abordaré, pero no creo que esté relacionado con el problema que tienes con una publicación que no recibe comentarios.

En cuanto al problema de la publicación que no recibe comentarios, ¿te refieres a que no se muestra el enlace a su tema en Discourse, o el problema es que el enlace muestra “iniciar la discusión” en lugar de “unirse a la discusión”?

Esto.

Tiene sentido si el número de comentarios es cero. No te preocupes por eso. Solo fue lo que llamó mi atención y me hizo recargar la página, notando que el contador volvía a bajar a cero.

Ah, y para responder a tu pregunta…

No.

¿Cuál es el valor correcto del campo “wpdc_sync_post_comments”?

Sigo teniendo problemas con esto.

Acabo de ir a un tema que tenía una publicación. El recuento de comentarios en el front-end de WP debería ser “1”, pero mostraba 0. El campo wpdc_sync_post_comments tenía el valor “0”. Asumo que es un indicador verdadero/falso y que debería estar establecido en 1, así que lo cambié y guardé la publicación. Al actualizar el front-end de WP, no hubo ningún cambio, así que publiqué un nuevo comentario en el tema de Discourse y actualicé inmediatamente la página de WP. El recuento de comentarios aumentó correctamente a “2”. Al actualizar la página de nuevo inmediatamente, ¡volvió a bajar a “0”! En la pantalla de edición, encontré que wpdc_sync_post_comments se había restablecido a 0 y

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

Otra publicación tiene lo siguiente:
discourse_comments_count == 3
discourse_comments_raw ===
{"id":1447,"posts_count":17,"filtered_posts_count":4,"posts":[],"participants": (recortado)

¡Gracias por los detalles!

Cuando el campo se establece en 1, los comentarios se sincronizarán la próxima vez que se cargue la página. Una vez sincronizados los comentarios, el valor de wpdc_sync_post_comments se restablecerá a 0.

Al revisar los metadatos que compartiste, parece que el plugin está restando 1 al número de comentarios cuando no debería. He estado viajando durante los últimos días. Lo revisaré detenidamente cuando vuelva al trabajo mañana.