# Intento de conseguir una onebox de YouTube

**URL:** https://meta.discourse.org/t/essai-davoir-une-onebox-de-youtube/398998
**Category:** Development
**Tags:** onebox
**Created:** [22 Marzo, 2026 10:32 UTC](https://meta.discourse.org/t/essai-davoir-une-onebox-de-youtube/398998 "2026-03-22T10:32:44Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![gilles](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gilles/32/549022_2.png) [@gilles](https://meta.discourse.org/u/gilles)
#### Post date: [22 Marzo, 2026 10:32 UTC](https://meta.discourse.org/t/essai-davoir-une-onebox-de-youtube/398998/1 "2026-03-22T10:32:44Z")

</div>

Lo siento, estoy teniendo otro problema con mi plugin que se comunica con una API.

Recupero diversa información que inserto en un tema en relación con una búsqueda. Mi problema es que recibo mi enlace de video de YouTube, pero se inserta como texto plano y no como _onebox_ como me gustaría. He probado varios métodos, pero estoy atascado, y por supuesto, quiero que sea compatible tanto con Markdown como con _rich text_.

Aquí hay una parte de mi código que se ocupa de la gestión de videos:

```javascript
const videoTags = Array.from(xmlDoc.getElementsByTagName(“video”));
const frenchVideos = videoTags.filter(v => (v.getAttribute(“language”) || “”).toLowerCase().includes(“french”));

```

```javascript
  if (frenchVideos.length > 0) {
    message += `<hr><h3>🎥 Vídeos de reglas (FR) :</h3>`;

    frenchVideos.slice(0, 3).forEach(video => {
      let vTitle = (video.getAttribute("title") || "Vídeo")
        .replace(/How to play/gi, "Cómo jugar")
        .replace(/Rules/gi, "Reglas");
      const vLink = video.getAttribute("link");

      // 1. El título en su párrafo
      message += `<p><strong>📖 ${vTitle}</strong></p>`;
      
      // 2. UN PÁRRAFO VACÍO (Simula pulsar 'Enter')
      message += `<p></p>`;
      
      // 3. EL ENLACE SOLO (Esta es la "línea única" solicitada por Discourse)
      // No ponemos <a>, dejamos el texto plano de la URL
      message += `<p>${vLink}</p>`;
      
      // 4. OTRO PÁRRAFO VACÍO (Simula una segunda 'Enter')
      message += `<p></p>`;
    });

    if (frenchVideos.length > 3) {
      message += `<p><em>(+ ${frenchVideos.length - 3} otros vídeos en BGG)</em></p>`;
    }
  }

```

Y aquí está el resultado

 ![image](https://global.discourse-cdn.com/meta/original/4X/f/6/8/f68df5c8cb6161a4f3c2a92f753b603b73a26191.jpeg)

---

<div class="post-metadata">

### Author: ![gilles](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gilles/32/549022_2.png) [@gilles](https://meta.discourse.org/u/gilles)
#### Post date: [22 Marzo, 2026 18:15 UTC](https://meta.discourse.org/t/essai-davoir-une-onebox-de-youtube/398998/2 "2026-03-22T18:15:27Z")

</div>

Lo siento, finalmente lo encontré, se me había olvidado usar la clase onebox 😅

Disculpen las molestias.
