web-dev-qa-db-fra.com

Repli pour le contenu oEmbed

Existe-t-il un moyen simple de détecter si une URL oEmbed renvoie toujours du contenu? Et, dans l’affirmative, existe-t-il un moyen de remplacer le contenu oEmbed manquant par un contenu de remplacement?

Par exemple, si je colle une URL instagram.com dans mon message, WordPress le reconnaîtra et utilisera oEmbed pour injecter le widget d'intégration d'Instagram dans le blog. Cela fournit une expérience riche et agréable pour les visiteurs avec une description, des tags, un lien vers la personne qui a posté l'image sur Instagram, etc.

Cependant, avec le temps, certains utilisateurs risquent de supprimer leurs anciennes images d'Instagram. Une fois que cela se produira, il n'y aura plus rien à intégrer et l'article de blog n'aura plus d'image du tout. Dans de tels cas, j'aimerais pouvoir détecter la (non) disponibilité du contenu oEmbed et fournir une solution de secours élégante, telle qu'une image stockée localement.

Si quelqu'un sait comment y parvenir, une aide serait très appréciée.

4
Ruben Ray Vreeken

Probablement impraticable. Lorsque vous ne contrôlez pas le contenu, vous ne pouvez pas savoir s'il sera incorporable au moment de la visualisation. Le meilleur exemple de ce qui pourrait être difficile dans le contexte de youtube/vimeo concerne les vidéos qui peuvent devenir restreintes, qu'elles soient privées ou géo. Dans ce cas, le contenu est toujours incorporable mais l'utilisateur voit une sorte de message "Ce contenu est limité". Dans ce cas, vous voudrez peut-être vous montrer un contenu alternatif, mais il est impossible de détecter un tel événement du côté de wordpress. Youtube a une API JS qui peut vous donner des indications pertinentes, mais tous les fournisseurs de services n’ont pas une telle API (la partie du code du serveur oembed wordpress n’a pas une telle chose autant que je sache)

Vous pouvez détecter la suppression de contenu en essayant d'exécuter le protocole oembed tous les plusieurs jours, mais en supposant qu'il n'y ait pas de problème de redimensionnement, que ferez-vous exactement en cas d'échec d'un oembed? vous ne pouvez pas remplacer une vidéo ou une chanson par un contenu alternatif, et utiliser une image instagram de votre serveur constitue une violation des droits d'auteur.

Si cela vous inquiète, faites ce que CNN fait en intégrant des tweets dans lesquels ils copient le texte du tweet dans leur contenu. En d'autres termes, si vous avez un contenu alternatif, utilisez-le simplement du côté de la un intégré.

1
Mark Kaplun