Vista previa de enlace no funciona para sitio específico

Hola,

Estoy administrando un foro de Discourse migrado recientemente. Las “Vistas previas de enlaces”, que tienen un aspecto agradable, se generan correctamente para todos los sitios que he probado, excepto este (que es importante para nosotros):

Dado que tampoco parece funcionar aquí en Meta, me pregunto si se trata de un error en Discourse o quizás de alguna rareza del propio sitio que está causando dificultades. ¿Alguna pista sobre qué podría ser?

Ese sitio no es privado y no requiere inicio de sesión. Yo también administro ese sitio, así que si hay algo que deba hacerse allí, puedo intentarlo.

Gracias.

El gem onebox de Discourse requiere que los sitios definan correctamente las etiquetas Open Graph. El sitio en tu publicación no tiene ninguna etiqueta Open Graph.

Por lo tanto, no podemos hacer mucho al respecto. El sitio necesita agregar las etiquetas OG necesarias para que pueda ser mostrado en un onebox en Discourse.

Perfecto, eso es lo que necesito saber. Veré si puedo agregar esas etiquetas. Gracias.

:thinking: Así que agregué las etiquetas: comprueba mi sitio en iframeley

Y puedo hacer que aparezca un Onebox en WhatsApp:

Pero no en Discourse:

Me preguntaba si podría ser un problema de caché, pero no parece serlo. Lo probé en diferentes sitios de Discourse y con variaciones de URL…

¿Hay alguna otra etiqueta que requiera Discourse y que me esté faltando? En otra publicación aquí leí que title y description son las únicas obligatorias, y yo tengo esas dos…

Gracias por tu ayuda.

onebox visita la página de destino y busca etiquetas Open Graph o oEmbed , incluyendo:

  • dirección del sitio
  • título
  • imagen destacada
  • descripción (obligatoria)
  • precio del producto

:warning: Tenga en cuenta que Discourse requiere que la etiqueta de descripción esté presente y contenga suficiente texto para resumir la página; de lo contrario, el enlace de destino no se mostrará como un onebox.

Otra buena explicación está disponible en Creating rich link previews with Onebox.

Iframes avanzados

Por defecto, <iframe> está bloqueado por razones de seguridad, pero si provienen de una fuente altamente confiable, un administrador de Discourse puede incluir explícitamente ese dominio en la lista blanca como destino de <iframe> en la configuración del sitio.

Ok, gracias. Tengo el título y la descripción. Quizás sea la falta del atributo og:image lo que está causando que Discourse no acepte mi sitio, aunque no he leído en ningún lado que este atributo sea obligatorio.

Tendré que probarlo con ese atributo, pero me encontré con algunas dificultades técnicas al hacerlo con Hugo. Cuando resuelva eso, volveré a informar aquí. Gracias

Esto está resultando difícil. Así que ahora tengo la og:image en mi meta y, al examinarlo con iframeley, todo parece estar bien.

Pero aún no puedo lograr que Discourse genere el onebox… :frowning:

¿Qué podría estar faltando?

Una imagen no es suficiente. También se requiere la descripción del texto.

Puede que me esté perdiendo algo obvio, pero ¿qué está mal o falta en mi etiqueta meta og:description?

Nada, pero la descripción debe existir y debe tener un número mínimo de caracteres, desde la perspectiva de Discourse.

Puedes consultar estos dos enlaces. Cerca del final del primer mensaje en el primer enlace hay un breve apartado sobre Advanced iFrames, y justo debajo de la imagen publicada se habla de Advanced iFrames. Al final del segundo tema (Desafíos de Onebox) hay algo interesante que podrías probar… un curl, y el mensaje proporciona el código para usarlo (solo tienes que sustituir tu URL por la que se muestra). Creating rich link previews with Onebox
Onebox challenges - #9 by Stephen