Incrustación Nativa de Twitter

Volvió y el mío se ha ido de nuevo

Disculpas, pero ¿puedes enumerar la solución completa como si se la explicaras a un niño? :sweat_smile:

  1. Instala el componente del tema
  2. Agrega https://platform.twitter.com/ en la configuración content security policy script src
  3. Agrega twitter.com a los blocked onebox domains
  4. Agrega cualquier cosa en la configuración twitter consumer key
  5. Agrega cualquier cosa en la configuración twitter consumer secret

Y debería funcionar

6 Me gusta

Oh, ya veo, gracias Steven. ¿Alguien tiene alguna idea de cómo arreglar las incrustaciones nativas de Twitter? Actualmente solo se muestran como enlaces en mi sitio, desde hace aproximadamente una semana, ¿o este componente es la única solución para las incrustaciones de Twitter?

Olvidé un paso, añadir twitter.com al dominio bloqueado de onebox (para los demás) :man_facepalming: He editado la publicación anterior.

¿Puedes compartir un enlace a tu foro por mensaje privado (un tema con un enlace de Twitter)? Quiero asegurarme de que has activado el componente del tema (algunas personas pueden olvidar añadirlo a sus temas) o comprobar el mensaje fuente (el enlace de Twitter debe estar en una línea propia).

2 Me gusta

Confirmo que las instrucciones proporcionadas por @Steven funcionan en mi instancia con la última versión (3.1.0.beta6).

1 me gusta

@Solarus ¿esto también funcionó para las publicaciones de Twitter con imágenes adjuntas?

Por ejemplo: https://twitter.com/droneswmp/status/1686451431006453760

Esto también me funcionó. Sin embargo, como último paso, tuve que reconstruir mi instancia de forma suave actualizando mi instancia de Discourse del lado del cliente. Eso pareció hacer el proverbial arranque.

I tested with a video embedded twit, i can check this particular twit on my instance and report back.

@Richie i tried with your example twit and the twit+image renders ok, no issues (my lang is spanish)

¿Hay planes para trabajar con la incrustación del enlace “http://x.com”?

2 Me gusta

Gracias por tu recordatorio. Lo arreglaré de inmediato.

3 Me gusta

Ahora admite x.com como enlace.
Cabe señalar que parece que Twitter aún no ha habilitado completamente el nombre de dominio x.com. No sé qué cambios se realizarán en el formato del enlace y en el javascript utilizado para la carga si el enlace de uso compartido predeterminado cambia a x.com en el futuro.

6 Me gusta

¿Se puede editar la primera publicación con las instrucciones adecuadas?

Estoy intentando seguir el hilo, pero hay alguien que sugiere añadir twitter.com a los dominios bloqueados para onebox, luego otro dice que no es necesario. Luego otro dice que elimine las claves de la API de Twitter y otro dice que no añada nada a ese campo…

Dejó de funcionar hace tiempo, así que lo abandonamos.

Suponíamos que Elon estaba tramando algo, así que pensamos que esperaríamos a que se calmara la situación :blush:

Gracias por el consejo, acabo de actualizar la instrucción.

3 Me gusta

En nuestro foro notamos que al encerrar el tweet en un bloque [quote] funciona la incrustación enriquecida, de lo contrario solo se visualiza el texto. Podría ser un problema con nuestro tema, pero pensé en dejar esto aquí por si alguien más se encuentra con un comportamiento similar.

¿Podrías intentar comprobar si el elemento link tiene una clase onebox?
Si quieres que el componente de tema funcione, depende de tener un atributo de clase “onebox”.

¿Has intentado añadir twitter.com y x.com a dominios de onebox bloqueados?

<a href="https://x.com/username/status/..." class="onebox">
3 Me gusta

Agregué tanto Twitter como X a los dominios bloqueados de onebox (olvidé X inicialmente), pero el extraño comportamiento persiste.

Sobre la clase CSS onebox, no sé dónde debería ver eso porque, por ejemplo, con este tuit:

https://twitter.com/SpoutLore/status/1715688928806944943

Todo lo que veo es la publicación incrustada después de enviarla:

<aside class="onebox twitterstatus" data-onebox-src="https://twitter.com/SpoutLore/status/1715688928806944943">
  <header class="source"><svg class="fa d-icon d-icon-fab-twitter svg-icon svg-string" xmlns="http://www.w3.org/2000/svg">
    <use href="#fab-twitter"></use>
  </svg>

      <a href="https://twitter.com/SpoutLore/status/1715688928806944943" target="_blank" rel="noopener">twitter.com</a>
  </header>

  <article class="onebox-body">
    
<h4><a href="https://twitter.com/SpoutLore/status/1715688928806944943" target="_blank" rel="noopener">Spout Lore <span class="badge badge-notification clicks" title="1 click">1</span></a></h4>
<div class="twitter-screen-name"><a href="https://twitter.com/SpoutLore/status/1715688928806944943" target="_blank" rel="noopener">@SpoutLore</a></div>

<div class="tweet">
  <span class="tweet-description">🚨NEW EPISODE!!🚨

In this ep the gang takes a page out of Christopher Nolan's book and tries to incept the shit out of themselves to see if they can figure literally ANYTHING out.

Also, most of this episode happens at a $7.99 pizza hut lunch buffet.

https://t.co/gDtdYQOYao</span>
</div>

<div class="date">
  <a href="https://twitter.com/SpoutLore/status/1715688928806944943" class="timestamp" target="_blank" rel="noopener">

</a>


</div>

  </article>

  <div class="onebox-metadata">
    
    
  </div>

  <div style="clear: both"></div>
</aside>

O, si está en un bloque de cita, esto:

<div class="twitter-tweet twitter-tweet-rendered" style="display: flex; max-width: 550px; width: 100%; margin-top: 10px; margin-bottom: 10px;"><iframe id="twitter-widget-13" scrolling="no" frameborder="0" allowtransparency="true" allowfullscreen="true" class="" style="position: static; visibility: visible; width: 550px; height: 786px; display: block; flex-grow: 1;" title="Twitter Tweet" src="https://platform.twitter.com/embed/Tweet.html?dnt=false&amp;embedId=twitter-widget-13&amp;features=eyJ0ZndfdGltZWxpbmVfbGlzdCI6eyJidWNrZXQiOltdLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2ZvbGxvd2VyX2NvdW50X3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9iYWNrZW5kIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19yZWZzcmNfc2Vzc2lvbiI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfZm9zbnJfc29mdF9pbnRlcnZlbnRpb25zX2VuYWJsZWQiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X21peGVkX21lZGlhXzE1ODk3Ijp7ImJ1Y2tldCI6InRyZWF0bWVudCIsInZlcnNpb24iOm51bGx9LCJ0ZndfZXhwZXJpbWVudHNfY29va2llX2V4cGlyYXRpb24iOnsiYnVja2V0IjoxMjA5NjAwLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3Nob3dfYmlyZHdhdGNoX3Bpdm90c19lbmFibGVkIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19kdXBsaWNhdGVfc2NyaWJlc190b19zZXR0aW5ncyI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdXNlX3Byb2ZpbGVfaW1hZ2Vfc2hhcGVfZW5hYmxlZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdmlkZW9faGxzX2R5bmFtaWNfbWFuaWZlc3RzXzE1MDgyIjp7ImJ1Y2tldCI6InRydWVfYml0cmF0ZSIsInZlcnNpb24iOm51bGx9LCJ0ZndfbGVnYWN5X3RpbWVsaW5lX3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9mcm9udGVuZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9fQ%3D%3D&amp;frame=false&amp;hideCard=false&amp;hideThread=false&amp;id=1715688928806944943&amp;lang=en&amp;origin=https%3A%2F%2Fnetgamers.it%2Ft%2Fusa-fascismo-e-polizia-part-2%2F836096%2F200&amp;sessionId=29bf06409a54fcadc10eb870158a5a32ae1772c3&amp;theme=light&amp;widgetsVersion=01917f4d1d4cb%3A1696883169554&amp;width=550px" data-tweet-id="1715688928806944943"></iframe></div>

Intentar esto aquí muestra el mismo comportamiento para el enlace directo simple, la parte multimedia se omite (al menos en la vista previa que puedo ver junto a esta respuesta)

La cita aquí no se transforma en el iframe completo, supongo que hicieron algo diferente o no están usando este componente.

https://twitter.com/SpoutLore/status/1715688928806944943

Sí, de hecho, usar el iframe de Twitter es el último recurso. Hay muchas desventajas en el uso de iframes. Discourse meta no usa este componente temático, y no creo que lo hagan.

¿Está esto en tu foro? Parece que la propia incrustación enriquecida de Discourse ha jugado un papel. Escribí este componente temático para aquellos que no pueden acceder a la incrustación enriquecida porque carecen de acceso a la API.

No consideré que los foros que ya pueden usar incrustaciones enriquecidas usarían este componente temático.

1 me gusta

Es un foro que administro (no es mío). Estoy probando esto porque las “oneboxes” no funcionan correctamente desde hace algún tiempo.