Quando disabilito il caricamento lazy dei video YT e attivo una ricostruzione HTML del post in questione, la miniatura viene aggiornata. Ma quando la riabilito e ricostruisco l’HTML, vedo di nuovo la vecchia miniatura.
C’è un modo per cancellare la cache delle miniature di un video? O c’è un modo per impostare/controllare il periodo di aggiornamento?
Questo è più correlato a YouTube che a qualsiasi altra cosa. Quando disabiliti il lazy loading, l’iframe del video viene incorporato direttamente, il che ha accesso diretto all’API di YouTube ogni volta che viene caricato.
Per il lazy loading, recuperiamo invece la miniatura da img.youtube.com/vi/id/maxresdefault.jpg. Esistono diverse dimensioni di immagine, ma YouTube non è molto chiaro su come aggiorna questi URL. Utilizziamo maxresdefault, che è l’immagine più grande che forniscono e, dai miei test, è quella che di solito impiega più tempo ad aggiornarsi. Nel mio caso ho scoperto che le miniature impiegavano da 1 a 30 minuti per essere aggiornate.
E per rispondere alla tua ultima domanda, no, non c’è modo di impostare un periodo di aggiornamento. Gli aggiornamenti delle miniature non sono molto frequenti, quindi non abbiamo un processo che li aggiorni periodicamente.
L’anteprima viene aggiornata sul lato YouTube. Nei nuovi argomenti viene caricata con quella nuova, ma nell’argomento originale continua a tornare a quella vecchia. Come se Discourse avesse una cache. Succede anche ancora oggi
La mia rapida soluzione ora è disabilitare il caricamento lazy, ricostruire l’HTML dell’argomento, ottiene la nuova immagine, ma è meno efficiente. Quindi riabilito il caricamento lazy e non tocco più l’argomento.
Questo è ancora un problema, anche con nuovi argomenti. Le miniature non vengono mai aggiornate, anche se il video di YouTube ottiene una nuova miniatura. Rimuovere i collegamenti, ricostruire l’HTML, aggiungere di nuovo il collegamento, tutto non ha importanza. Mantiene per sempre la vecchia miniatura. È possibile risolvere questo problema?