Spiacente, riscontro un altro problema con il mio plugin che comunica con un’API.
Recupero diverse informazioni che inserisco in un topic relativo a una ricerca. Il mio problema è che ricevo il mio link video di YouTube ma viene inserito come testo semplice e non come onebox, come vorrei. Ho provato diversi metodi ma sono bloccato, e ovviamente voglio che sia compatibile sia con Markdown che con il testo ricco.
Ecco una parte del mio codice che riguarda la gestione dei video
const videoTags = Array.from(xmlDoc.getElementsByTagName(“video”));
const frenchVideos = videoTags.filter(v => (v.getAttribute(“language”) || “”).toLowerCase().includes(“french”));
if (frenchVideos.length > 0) {
message += `<hr><h3>🎥 Video delle regole (FR) :</h3>`;
frenchVideos.slice(0, 3).forEach(video => {
let vTitle = (video.getAttribute("title") || "Video")
.replace(/How to play/gi, "Come giocare")
.replace(/Rules/gi, "Regole");
const vLink = video.getAttribute("link");
// 1. Il titolo nel suo paragrafo
message += `<p><strong>📖 ${vTitle}</strong></p>`;
// 2. UN PARAGRAFO VUOTO (Simula la pressione di 'Invio')
message += `<p></p>`;
// 3. IL LINK DA SOLO (È la "riga singola" richiesta da Discourse)
// Non mettiamo un <a>, lasciamo il testo grezzo dell'URL
message += `<p>${vLink}</p>`;
// 4. UN ALTRO PARAGRAFO VUOTO (Simula una seconda 'Invio')
message += `<p></p>`;
});
if (frenchVideos.length > 3) {
message += `<p><em>(+ ${frenchVideos.length - 3} altri video su BGG)</em></p>`;
}
}
Ed ecco il risultato
