Questionnement sur le stockage en dur des tailles
Je me suis aperçu que les tailles des médias ajoutés en tant que vrais documents sont gardés statiquement en mémoire, même si les colonnes de la table ne sont pas remplis. En effet, c'est gardé dans le HTML distant stocké, et c'est ça qui est utilisé ensuite pour forcer les tailles (width=html|attribut_html{width}).
<iframe src="https://player.vimeo.com/video/XXXXX" width="600"
Or ça signfie qu'on garde de manière statique un choix qui est purement dépendant de l'esthétique d'un instant T, du thème du moment, ce qu'on essaye de ne jamais faire normalement, pour la bonne raison que les contenus doivent avoir le moins de rapport avec le graphisme.
Concrètement cela signifie que si un an plus tard la maquette change, et qu'on met largeur max à 1200 au lieu de 600 pour que ça fasse bien des grands médias jolis… tous les médias déjà ajoutés seront toujours en 600 de large ! Et il faudrait reprendre un par un les possiblement centaines de médias (souvent vidéos) ajoutés dans la médiathèque par oEmbed, pour que ça re-génère un HTML totalement différent (ainsi que les vignettes d'ailleurs puisque même avec la dernière modif, ça force la vignette à 640 par défaut, et pas la meilleure 1280). Ça ne se fait pas juste en changeant la config quoi, puisque l'ancienne taille est gardée statiquement.
Je ne sais pas quelle serait la meilleure stratégie…
- soit il ne faudrait pas de taille fixée en dur, càd les retirer de l'iframe, et les injecter en squelettes suivant la config lors de l'affichage
- soit il faudrait que quand on change la config, un génie passe sur tous les médias oembed existant pour tout re-générer, càd le HTML et la vignette
- soit à minima il faudrait un bouton d'action manuelle pour lancer cette régénération à la main (ou un spip-cli ? mais ça ne sera pas accessible à tout le monde, or tout admin peut changer la "largeur max" facilement, à tout moment)