WP Discourse sobre tema sin editor de sitio

He estado contento usando el plugin WP Discourse para nuestro sitio de WordPress del podcast para conectarme a nuestra Comunidad Discourse. Dejé de ver las discusiones de Discourse hace algún tiempo después de la última actualización del plugin.

Puede que me equivoque, pero parece que ahora la forma de añadirlo a una plantilla es a través del Editor de Sitio Completo (?). Podría considerar cambiar, pero estoy muy contento con mi tema Anders Noren Garfunkle. Su plantilla de publicación única tiene un diseño que coloca los comentarios en una pantalla de pestañas en la parte inferior de la publicación, fuera del alcance de los widgets.

Consideré añadir manualmente un bloque de Discourse a todas las publicaciones, pero por ahora he hecho un ajuste que inserta las discusiones de Discourse usando código HTML. En mi tema hijo, comento la plantilla de comentarios estándar de WordPress (solo permitimos comentarios a través de Discord) y verifico los metadatos de la publicación en busca de un ID de Discourse.

<?php //comments_template( '', true ); ?>

<?php
	$discourse_topic_id = get_post_meta( $post->ID, 'discourse_topic_id', 1 ); ?>
	
	<?php if ($discourse_topic_id) : ?>
	
		<div id="discourse-comments"></div>

		<script type="text/javascript">
		  DiscourseEmbed = { discourseUrl: 'https://connect.oeglobal.org/',
						topicId: '<?php echo $discourse_topic_id ?>' };
		
		  (function() {
			var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
			d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
			(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
		  })();
		</script>
	
<?php endif; ?>

No es un diseño tan elegante, pero funciona por ahora – ver la parte inferior del episodio más reciente por ejemplo.

2 Me gusta

Hola @cogdog, me alegra saber cómo estás usando el plugin. Mencionaste que usas bloques. ¿Has probado el bloque WP Discourse Comment?

1 me gusta

Sí, uso el Bloque de Comentarios WP Discourse en otro sitio donde tenemos un tema FSE, por lo que está en la plantilla.

Mi problema es que mi tema Garfunkel del blog no lo soporta, y el espacio de comentarios está integrado en la plantilla. No estoy muy familiarizado con el desarrollo de temas de bloques, ¿puedo insertar un bloque a través de PHP en la plantilla? Estoy mirando cosas como Testing and Feedback for using block based template parts in classic themes – Make WordPress Themes pero no estoy muy seguro de cómo integrar un bloque existente.

La única otra forma que se me ocurre es añadir el Bloque de Comentarios WP Discourse al final de cada publicación, pero ya tengo 88 publicaciones en el sitio.

Ok, solo rebobinando un poco, veamos tu problema de nuevo.

¿Quieres decir que:

  1. Acabas de actualizar el plugin WP Discourse (y nada más, es decir, no WordPress, tu tema u otros plugins).
  2. La sincronización de comentarios dejó de funcionar

¿Es eso lo que sucedió?