El cuadro de comentarios de Discourse aparece 2 veces

Aparecen 2 cuadros de comentarios de Discourse.

Plataforma: WordPress
Tema: Astra

Antes usábamos el tema Extol y luego pasamos a Astra. Se agregó el hook de la sección de comentarios mediante el constructor de sitios de Astra y se colocó debajo de la publicación mediante la condición de visualización.

Todas las publicaciones del blog muestran la sección de comentarios normalmente, excepto 3 publicaciones (que muestran la sección de comentarios de Discourse dos veces).

¿Alguien puede ayudarme?

Hola, parece un problema con tu tema, o quizás con la forma en que usas “Astra Site Builder”, pero veamos si podemos ayudarte de todos modos.

¿Podrías explicar cómo se ve esto? ¿Usaste algún código? ¿Podrías enlazar a la documentación de “Astra Site Builder”? ¿Es un tema habilitado para bloques? Intenta dar tantos detalles como sea posible.

1 me gusta

Gracias @angus por tu pronta respuesta.

En realidad, no veo ningún código al editar el código y estoy usando la plantilla de publicación única predeterminada del tema, que no debería tener el código de comentarios de Discourse.

Lo extraño es que esto solo sucede con las siguientes publicaciones: Strange thing is this happening with only following posts: - Pastebin.com [Por favor, revisa pastebin, agregué enlaces allí]

Otras publicaciones muestran solo el cuadro de comentarios que agregué con el constructor de sitios de Astra.

Sí, Astra es un tema habilitado para bloques. Aquí está su documentación: Documentation Docs

¿Utilizaste el bloque de comentarios de WP Discourse?

1 me gusta

Sí, usé el bloque de comentarios de WP Discourse en Astra Site Builder. Incluso si deshabilito el hook de Astra Site Builder, esta caja de comentarios de Discourse adicional sigue visible debajo de la publicación.

Anteriormente usábamos el tema extol. Agregamos el bloque de comentarios de Discourse en la propia página de publicación única.

Luego nos mudamos a Astra.

Astra tiene algunas limitaciones, por lo que no podemos editar la plantilla predeterminada de publicación única. Es por eso que agregué el cuadro de comentarios de Discourse a través del hook del constructor de sitios de Astra, que está funcionando perfectamente.

Incluso si deshabilito el hook del constructor de sitios de Astra, estas 3 páginas aún muestran el cuadro de comentarios de Discourse, no agregamos el bloque de cuadro de comentarios en la publicación. Y realmente no pude averiguar de dónde viene aquí.

Deshabilite la configuración “Habilitar comentarios de Discourse” en WP Discourse > Comentarios y dígame qué efecto tiene (asegúrese de guardar el cambio de configuración).

Si deshabilito esta configuración, ambas cajas de comentarios desaparecen.

1 me gusta

Ok, puedes volver a habilitarlo.

El problema es que, sea cual sea la combinación de tema y constructor de sitios que estés utilizando, tienes tanto una plantilla de publicación PHP como una plantilla de publicación de bloques en la misma página (eso no es normal). Esa es la razón por la que esto está sucediendo.

Si deseas cargar ambas plantillas en una sola página, debes eliminar la línea comments_template de la plantilla PHP de la publicación.

1 me gusta

Si es de php, me pregunto por qué solo es visible para 3 publicaciones específicas.
No pude encontrar comments_template en el archivo single.php. :cry:

1 me gusta

Si deshabilito los comentarios desde la configuración del personalizador, solo desaparece el cuadro de comentarios. El cuadro de comentarios de Discourse todavía es visible.

1 me gusta

Todavía no pude resolverlo.

Cuando alguien comenta en un hilo del foro de Discourse, aparece una nueva sección de comentarios debajo de la publicación de blog relacionada. No pude encontrar comments_template.

¿Podrías sugerir algún artículo o tutorial en video al respecto?

@angus

1 me gusta

Oculté una sección de comentarios con CSS adicional.

Es una solución temporal. Si hay alguna forma más efectiva, házmelo saber y la aplicaré.

1 me gusta

Hay una llamada a la función de plantilla de comentarios en las plantillas PHP que estás utilizando, lo que está causando esto. Se verá algo así.

<?php comments_template(); ?>

Dónde estará dependerá de las plantillas PHP que estés utilizando. Encuentra esa función y resolverás el problema. Desafortunadamente, no hay mucha más ayuda que nosotros, o un artículo, podamos dar.

Lo único que sugeriría es ponerte en contacto con las personas que dan soporte a “Astra”. El problema subyacente aquí es esta combinación de plantillas PHP y bloques que tienes. Quizás ellos puedan arrojar algo de luz sobre eso.

2 Me gusta

Primero, quiero dar un gran y sincero gracias a @angus por apoyarme durante todo esto y brindarme una guía tan reflexiva. Tu apoyo significa mucho, y aprecio sinceramente el tiempo y el esfuerzo que has dedicado a ayudarme a solucionar esto. Permíteme repasar todo lo que he explorado y probado, con la esperanza de que pueda ayudar a otros que enfrentan problemas similares.

Antecedentes y Configuración Inicial:
Inicialmente, estábamos usando el tema Extol, donde agregamos el bloque de comentarios de Discourse directamente en la página de una sola publicación. Esto funcionó perfectamente. Cuando cambiamos al tema Astra, las cosas se volvieron más complicadas. Dado que Astra tiene algunas limitaciones (como no poder editar fácilmente la plantilla predeterminada de una sola publicación), agregué el cuadro de comentarios de Discourse a través de los ganchos de Astra Site Builder y lo coloqué debajo de la publicación según una condición de visualización.

Esto funcionó sin problemas para la mayoría de las publicaciones, pero para tres publicaciones específicas, la sección de comentarios de Discourse apareció dos veces. No pude entender por qué esto sucedía solo para estas publicaciones, mientras que otras se mostraban correctamente. Esta anomalía me llevó a pensar que podría haber un remanente de la antigua configuración de Extol, pero no pude identificar nada definitivo.

Explorando el Problema:

  • Primero verifiqué el editor de publicaciones, buscando configuraciones o bloques que pudieran haber sido habilitados o deshabilitados manualmente para los comentarios de Discourse. Sorprendentemente, no había nada allí: ni bloques adicionales, ni configuraciones diferentes.

  • A continuación, deshabilité el gancho de Astra Site Builder para ver si eso eliminaba la sección de comentarios adicional. No lo hizo; el cuadro duplicado permaneció. Esto sugirió que la duplicación estaba ocurriendo fuera de la configuración de Astra Site Builder.

  • Luego intenté deshabilitar “Habilitar comentarios de Discourse” en la configuración de WP Discourse. Como me aconsejaste, esto eliminó ambas secciones de comentarios, lo que indicó que ambas se estaban generando de alguna manera a través de esta integración.

  • Después de volver a habilitarlo, profundicé en los archivos del tema. Busqué en single.php, content-single.php y otros archivos de plantilla relacionados cualquier instancia de comments_template();. Desafortunadamente, no pude encontrar nada que llamara explícitamente a esta función. Esto me dejó perplejo. Si fuera un problema de plantilla PHP, ¿por qué no pude encontrarlo?

  • También intenté buscar plantillas personalizadas. ¿Quizás estas tres publicaciones estaban usando una plantilla diferente? Tampoco pude confirmarlo. Todo apuntaba a la configuración predeterminada.

  • Otra teoría estaba relacionada con la sincronización de comentarios: tal vez cuando alguien comentaba en el foro de Discourse, activaba que apareciera otra sección de comentarios debajo de la publicación de blog relacionada. Esto parecía plausible, pero no pude encontrar una configuración o documentación que se vinculara directamente con este comportamiento.

  • Recurrí a una solución CSS temporal para ocultar la sección de comentarios duplicada:

    Agregué CSS en el Personalizador del tema de WP CSS adicional

    #comments {
        display: none !important;
    }
    

    Agregué CSS en el gancho de Astra:

    #comments {
        display: block !important;
    }
    

    Si bien esto funcionó, estoy de acuerdo en que no es una solución permanente. Preferiría abordar la causa raíz.

Pensamientos y Teorías:

  • Sospecho que podría ser un problema más profundo con la forma en que Astra maneja los ganchos y bloques: quizás algún conflicto o duplicación en la forma en que se incrustan los comentarios de Discourse.
  • Otra posibilidad es que haya una configuración oculta o una configuración residual del antiguo tema Extol que todavía esté influyendo en las cosas.
  • O podría estar relacionado con la forma en que Discourse se sincroniza con WordPress. Cuando se realiza un comentario en el foro, podría activar algo dentro del sitio de WordPress, creando esa sección adicional.

Lo que no he intentado:

  • Contactar al soporte de Astra: Como sugeriste, esto podría valer la pena. Es posible que estén al tanto de problemas similares o puedan proporcionar información sobre cómo su tema maneja los comentarios y los ganchos.
  • Deshabilitar todos los complementos excepto WP Discourse: Esto podría ayudar a aislar si otro complemento está causando este comportamiento.
  • Probar con una publicación completamente nueva: Crear una publicación nueva desde cero y ver si el problema se replica podría revelar algo.

Próximos Pasos:
Por ahora, creo que exploraré contactar al soporte de Astra y posiblemente realizar más pruebas con los complementos deshabilitados. También podría intentar un enfoque diferente utilizando un tema hijo y ver si puedo manejar manualmente la sección de comentarios de Discourse con mayor precisión.

Nuevamente, Angus, muchas gracias por tu ayuda y paciencia. Tus ideas han sido invaluables, y aunque todavía no lo he resuelto, me siento más cerca de entender lo que está sucediendo. Si alguien más tiene pensamientos, ideas o experiencias con problemas similares, ¡me encantaría escucharlos!

Seguiré investigando y actualizaré aquí si descubro algo nuevo. ¡Saludos!

2 Me gusta

¿Tienes habilitada la configuración Mostrar comentarios existentes de WP por casualidad?

2 Me gusta

Intenté activando/desactivando la configuración, no tuvo ningún efecto en el cuadro de comentarios adicional de Discourse.

Gracias @Arkshine

1 me gusta

¡Mi error, no estaba mirando el problema correcto!
Pensé que te referías solo a este:


Creo que tu problema es el esperado.
El tema Astra no es compatible con la función de Edición Completa del Sitio ni funciona con bloques.
En otras palabras, Astra no es un tema de bloques, y para personalizar páginas, necesitas usar un constructor de páginas de terceros (como Elementor, en tu caso).

Seguramente verás un duplicado si no estás usando el bloque de Discourse para reemplazar el bloque de Comentarios original. Angus muestra lo que necesitarías hacer si tuvieras un tema de bloques en su video: WP Discourse Comments Block.

No estás reemplazando el área de comentarios cuando agregas el bloque de Discourse usando hooks; colocas código personalizado en una ubicación específica.


¿Cuál es la solución?

Si prefieres la apariencia/ubicación del hook de Astra, hay una manera de eliminar el área de comentarios nativa de WP. Puedes agregar este código PHP. Consulta How to Add Custom PHP Code in the Astra Theme? si necesitas ayuda sobre cómo hacerlo.

add_action(
	'init',
	function() {
		if ( class_exists( 'Astra_Loop' ) ) {
			remove_action( 'astra_template_parts_content', array( Astra_Loop::get_instance(), 'template_parts_comments' ), 15 );
		}
	},
	11
);

¡Espero que eso ayude!

4 Me gusta

¡Muchas gracias, @Arkshine! :tada:
Finalmente, la sección de comentarios nativa ya no es visible. ¡Ha sido todo un viaje!

Y un enorme agradecimiento también a @angus. Tu paciencia, guía y profundas ideas fueron verdaderamente invaluables durante todo este proceso. Agradezco sinceramente el tiempo y el esfuerzo que dedicaste a ayudarme a resolver este problema.

Desde probar diferentes configuraciones hasta depurar la mezcla de plantillas de bloques y PHP, exploré todo: desde deshabilitar los ganchos de Astra hasta ajustar CSS, verificar la plantilla de comentarios e incluso rastrear por qué solo ciertas publicaciones se veían afectadas. Fue una montaña rusa de prueba y error, pero cada paso me ayudó a comprender mejor el sistema.

Esto no hubiera sido posible sin tu experiencia y tu disposición a ayudar. Tu ayuda no solo solucionó el problema, sino que me enseñó mucho sobre WordPress, Discourse y las integraciones de temas. Estoy inmensamente agradecido.

Para cualquiera que enfrente problemas similares: sigue probando, sigue aprendiendo y nunca dudes en pedir ayuda. ¡La comunidad es increíble! :rocket:

3 Me gusta

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