Los comentarios de Discourse no se reflejan en el blog de WordPress (versión 2025)

Continuando la discusión de Los comentarios de Discourse no se reflejan en el blog de Wordpress:

Hola. He instalado una copia nueva de Discourse 3.4.0 (4abee26a32) y WordPress 6.7.2 en mi PC local para probar y no puedo conseguir que los comentarios se sincronicen de Discourse a WordPress (aunque la publicación inicial sí se sincroniza de WordPress a Discourse). Mi problema parece ser muy similar al informe mucho más antiguo que se vincula arriba. ¿Podría ser una regresión?

He habilitado todos los registros, pero esto es todo lo que veo en los registros de mi instancia de WordPress:

[2025-02-26 21:24:55] connection.INFO: check_connection_status.successful_connection
[2025-02-26 21:24:55] connection.INFO: check_connection_status.valid_scopes
[2025-02-26 21:28:49] publish.INFO: create_post.post_success {"wp_title":"This is a test","wp_author_id":"1","wp_post_id":7}
[2025-02-26 21:28:49] publish.INFO: create_post.body_valid {"wp_title":"This is a test","wp_author_id":"1","wp_post_id":7}
[2025-02-26 21:28:49] publish.INFO: create_post.after_publish {"post_id":7,"remote_post_type":"create_post","discourse_post_id":"34","discourse_topic_id":"16","discourse_permalink":"https://discourse.cs.siue.edu/t/this-is-a-test/16"}
[2025-02-26 21:28:49] webhook_topic.INFO: update_topic_content.update_post_metadata_success {"post_ids":"7"}
[2025-02-26 21:29:27] webhook_topic.INFO: update_topic_content.update_post_metadata_success {"post_ids":"7"}
[2025-02-26 21:53:39] webhook_topic.INFO: update_topic_content.update_post_metadata_success {"post_ids":"7"}

Y esto es todo lo que veo en la sección de comentarios de mi publicación de WordPress:

El recuento de respuestas se incrementa inmediatamente, pero no veo los comentarios reales. Tampoco veo ningún error en los registros del sistema en /var/log/php-fpm/www-error.log.

¿Alguien tiene alguna idea de qué podría estar causando este problema o cómo depurarlo? Gracias.

Hola @Gregory_Bartholomew, te garantizo que no es una regresión. Vamos a repasar qué aspecto de tu configuración local podría estar causando esto.

  1. ¿Qué tema estás usando?
  2. ¿Es un tema habilitado para bloques?
  3. ¿Has personalizado el tema?
  4. ¿Qué ajustes has habilitado para el plugin WP Discourse (quizás comparte el archivo meta de los registros)?

En algún momento, mantener activados los comentarios de WordPress hizo exactamente eso. Fue hace al menos un año, y nunca comprobé si ese comportamiento ha cambiado o si era una cuestión dependiente del tema.

Si está experimentando un problema similar, podemos investigarlo en paralelo. ¿Puede compartir las respuestas a las mismas preguntas?

Podría, pero eso no fue ningún problema después de deshabilitar los comentarios de WordPress. El problema del OP es que los comentarios de WordPress anulan Discourse. Y también puede haber una solución fácil: esa publicación nunca se enlaza a Discourse :smirking_face:

Entiendo. Creo que tu problema puede haber sido diferente al de @Gregory_Bartholomew. Veamos si podemos obtener información específica sobre su configuración y resolver su problema. Cada problema debe tratarse de forma independiente.

Bueno, no tengo ningún problema en curso, porque en cualquier situación no permito los comentarios nativos de Wordpress. Discourse se encarga de eso muy bien. Mis pensamientos eran solo una idea de solución débil y conducen a problemas de configuración :man_shrugging:

¿Estás diciendo que necesito deshabilitar el sistema de comentarios integrado de WordPress de alguna manera?


Actualmente es el tema predeterminado twentytwentyfive.

Sí, lo es. También (pero probablemente no relacionado), hubo un pequeño error en el tema predeterminado que requirió que cargara y volviera a guardar el archivo index.html. El problema y la solución alternativa se documentan aquí.

Aparte de la solución alternativa anterior para solucionar un error aparentemente no relacionado, no, no he realizado ninguna personalización en el tema.

Claro, aquí está la salida meta de la página de registros.

### Este archivo se incluye en las descargas de registros ###

### Servidor ###

WordPress - 6.7.2
PHP - 8.3.17
MySQL - 10.11.10

### Plugins Activos ###

Fedora SSR Endpoint - 1.3.0
WP-Discourse - 2.5.6

### Configuración de WP Discourse (Secretos Excluidos) ###

connection-logs - 1
display-subcategories - 0
allow-tags - 0
max-tags - 5
publish-as-unlisted - 0
full-post-content - 0
custom-excerpt-length - 55
add-featured-link - 0
auto-publish - 1
force-publish - 0
force-publish-max-age - 0
publish-failure-notice - 0
auto-track - 1
allowed_post_types - post
exclude_tags -
hide-discourse-name-field - 0
discourse-username-editable - 0
direct-db-publication-flags - 0
verbose-publication-logs - 1
enable-discourse-comments - 1
comment-type - display-comments
ajax-load - 0
load-comment-css - 0
discourse-new-tab - 0
hide-wordpress-comments - 0
show-existing-comments - 0
max-comments - 5
min-replies - 1
min-score - 0
min-trust-level - 1
bypass-trust-level-score - 50
only-show-moderator-liked - 0
custom-datetime-format -
cache-html - 0
clear-cached-comment-html - 0
verbose-comment-logs - 1
use-discourse-webhook - 1
webhook-match-old-topics - 0
use-discourse-user-webhook - 0
webhook-match-user-email - 0
verbose-webhook-logs - 1
enable-sso - 0
auto-create-sso-user - 0
real-name-as-discourse-name - 0
force-avatar-update - 0
redirect-without-login - 0
sso-client-enabled - 0
sso-client-login-form-change - 0
sso-client-sync-by-email - 0
sso-client-disable-create-user - 0
sso-client-sync-logout - 0
logs-enabled - 1

Una ligera inexactitud que noto en la salida meta es que no estoy usando “MySQL” sino su fork “MariaDB” (mariadb-server-10.11.10-1.fc41.x86_64). Además, tengo instalado el paquete php-mysqlnd (php-mysqlnd-8.3.17-1.fc41.x86_64).

Gracias por ese detalle @Gregory_Bartholomew. Como es un tema habilitado para bloques, ¿has probado el bloque de comentarios de WP Discourse?

Sí, vi ese video y ya he habilitado la casilla en la parte superior:

image

Entonces, solo para confirmar, ¿fuiste a Apariencia > Editor, abriste la Plantilla de Publicación Única y agregaste el bloque WP Discourse a la plantilla?

No, no recuerdo haber hecho nada de eso. Supongo que me lo perdí en el video. Lo intentaré ahora. ¡Gracias!

1 me gusta

Bueno, parecía prometedor, pero cuando hice clic en “ver sitio” para volver a la página principal del índice, se bloqueó. :confused:

Del registro de php-fpm:

[27-Feb-2025 15:21:37 UTC] PHP Fatal error:  Uncaught Error: Call to undefined function WPDiscourse\\Shared\\mb_convert_encoding() in /wordpress/wp-content/plugins/wp-discourse/lib/template-functions.php:335
Stack trace:
#0 /wordpress/wp-content/plugins/wp-discourse/lib/discourse-comment-formatter.php(136): WPDiscourse\\DiscourseCommentFormatter\\DiscourseCommentFormatter->fix_avatars_in_quotes()
#1 /wordpress/wp-content/plugins/wp-discourse/lib/discourse-comment.php(312): WPDiscourse\\DiscourseCommentFormatter\\DiscourseCommentFormatter->format()
#2 /wordpress/wp-content/plugins/wp-discourse/blocks/comments/comments.php(34): WPDiscourse\\DiscourseComment\\DiscourseComment->comments_template()
#3 /wordpress/wp-includes/class-wp-block.php(537): render_block_wpdc_comments()
#4 /wordpress/wp-includes/class-wp-block.php(517): WP_Block->render()
#5 /wordpress/wp-includes/class-wp-block.php(517): WP_Block->render()
#6 /wordpress/wp-includes/blocks/post-template.php(123): WP_Block->render()
#7 /wordpress/wp-includes/class-wp-block.php(537): render_block_core_post_template()
#8 /wordpress/wp-includes/class-wp-block.php(517): WP_Block->render()
#9 /wordpress/wp-includes/class-wp-block.php(517): WP_Block->render()
#10 /wordpress/wp-includes/blocks.php(2191): WP_Block->render()
#11 /wordpress/wp-includes/blocks.php(2243): render_block()
#12 /wordpress/wp-includes/block-template.php(263): do_blocks()
#13 /wordpress/wp-includes/template-canvas.php(12): get_the_block_template_html()
#14 /wordpress/wp-includes/template-loader.php(106): include('...')
#15 /wordpress/wp-blog-header.php(19): require_once('...')
#16 /wordpress/index.php(17): require('...')
#17 {main}
  thrown in /wordpress/wp-content/plugins/wp-discourse/lib/template-functions.php on line 335

Edición 1: Dice función indefinida mb_convert_encoding(). ¿Quizás solo necesito instalar un paquete de PHP que falta?

Edición 2: Sí, eso es todo. Necesitaba instalar php-mbstring. Todo parece estar funcionando ahora. ¡Gracias!

Un pequeño problema que sigo viendo es que los emojis y los avatares no parecen mostrarse:

Supongo que todavía necesito configurar algo.

En el lado de Discourse, mi avatar es solo la letra predeterminada en un círculo:

Además, el emoji tampoco parece mostrarse correctamente en el lado de Discourse, pero me preocupa menos porque no administro la instancia de Discourse de producción que eventualmente espero usar. :slightly_smiling_face:

Editar: Olvídalo sobre el problema de los avatares. Parece que podría deberse al menos en parte a la forma en que está configurado mi entorno. Estoy apuntando WordPress al puerto 3000, pero los avatares se resuelven en http://localhost:4200/letter_avatar_proxy/v4/letter/.... Probablemente los deshabilitaré de todos modos.

¡Me alegra que lo hayas hecho funcionar!

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.