Hola, publico una actualización sobre esto, ya que algunas cosas han cambiado en mi investigación sobre este problema. El problema persiste desde la actualización a la versión 3.0.4; todos los artículos recién creados tienen problemas para mostrar el código incrustado de Discourse. Todos los artículos creados antes de esta actualización no tienen ningún problema, por lo que no es un bloqueo de dirección IP lo que está causando esto.
Parece que Discourse, en la versión más reciente, ha cambiado la lógica de cómo se crean automáticamente las publicaciones mediante el código de incrustación, por lo que ahora el nuevo código requiere la URL canónica. Vea el tema enlazado anteriormente:
Sin embargo, esto rompe por completo la funcionalidad de incrustación en sitios como el mío. Anteriormente, utilizaba el ID de nodo en Drupal para incrustar, como se ve en el siguiente código:
discourseEmbedUrl = "http://sitename.com/node/' . $nid . '";
Este nuevo código de Discourse requiere que se utilice la URL canónica en su lugar, lo que da como resultado la creación de temas duplicados si alguien simplemente renombra el título del artículo. Esa es la razón por la que usaba el ID de nodo, porque no cambia.
¿Sería posible que esta nueva URL canónica fuera opcional? Intenté cambiar mi código de incrustación para usarla, pero el problema de carga volvió para todas las publicaciones creadas con el código de incrustación antiguo.
Entonces, ahora mismo, con el nuevo código de Discourse ejecutándose en mi sitio de producción, me encuentro atrapado con una de estas dos opciones:
- Los artículos recién creados en Drupal muestran “Cargando…” pero nunca cargan el bloque de incrustación de comentarios; los artículos antiguos creados antes de Discourse 3.0.4 se cargan bien.
O,
- Los artículos recién creados en Drupal cargan el bloque de incrustación de comentarios sin problemas, pero todos los artículos antiguos creados antes de Discourse 3.0.4 muestran “Cargando…” pero nunca cargan el bloque de incrustación de comentarios.
¿Hay alguna manera de hacer que esta nueva función sea opcional? Tener que elegir entre una de estas opciones me pone en una situación en la que no gano.