Qu'est-ce qui rend un site compatible avec les aperçus onebox ?

Je souhaite aider les développeurs du framework Python suivant à rendre leur site compatible avec Onebox pour notre instance Discourse afin de le promouvoir :

https://docs.sunpy.org/en/v3.0.0/whatsnew/3.0.html

Alors, qu’est-ce qui rend un site compatible avec Onebox ? J’ai fait une recherche Google sur Onebox et je suis tombé sur cette page GitHub : GitHub - discourse/onebox: (DEPRECATED) A gem for turning URLs into website previews · GitHub. Mais pour le framework que j’ai mentionné, ils utilisent Sphinx pour générer automatiquement certaines pages. Existe-t-il des paramètres que les développeurs peuvent configurer dans Sphinx pour rendre leurs pages compatibles avec Onebox ?

Si vous essayez de lier https://docs.sunpy.org/en/v3.0.0/whatsnew/3.0.html sur une ligne seule, vous verrez ce message :

Désolé, nous n’avons pas pu générer un aperçu de cette page web, car les balises oEmbed / OpenGraph suivantes n’ont pas pu être trouvées : description, image

Cette page possède une balise méta OpenGraph description vide, nous ne pouvons donc pas l’intégrer. Elle utilise également des URL relatives pour certaines autres balises OpenGraph, comme image et url, dont je ne suis pas certain qu’elles soient prises en charge.

J’ai donc transmis les informations à l’équipe de développement de SunPy. Ils ont testé une correction avec cette page : https://sunpy--5366.org.readthedocs.build/en/5366/. La validation par opengraph.xyz a confirmé que toutes les balises sont définies dans le fichier HTML :

<!-- Balises Meta HTML -->
<title>Documentation SunPy</title>
<meta name="description" content="Documentation SunPy">

<!-- Balises Meta Facebook -->
<meta property="og:description" content="Documentation SunPy">
<meta property="og:image" content="https://raw.githubusercontent.com/sunpy/sunpy-logo/master/generated/sunpy_logo_word.png" />
<meta property="og:site_name" content="Documentation SunPy" />
<meta property="og:title" content="Documentation SunPy">
<meta property="og:type" content="website">
<meta property="og:url" content="https://docs.sunpy.org/en/stable//index.html" />

<!-- Balises Meta Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:description" content="Documentation SunPy">
<meta name="twitter:image" content="https://raw.githubusercontent.com/sunpy/sunpy-logo/master/generated/sunpy_logo_word.png">
<meta name="twitter:title" content="Documentation SunPy">
<meta property="twitter:domain" content="https://docs.sunpy.org/en/stable/">
<meta property="twitter:url" content="https://docs.sunpy.org/en/stable//index.html">

Néanmoins, cela ne fonctionne toujours pas dans notre instance Discourse ; nous recevons toujours l’erreur : oEmbed / Balises OpenGraph introuvables : description, image

Y a-t-il quelque chose qu’ils ne voient pas ? Voici notre fil de discussion sur GitHub concernant ce problème : onebox-compatible documentation for promoting SunPy's features and updates · Issue #5362 · sunpy/sunpy · GitHub

Est-ce une entrée réelle ? La description devrait être plus longue et contenir un sous-ensemble du contenu réel de la page, et non un espace réservé comme « Documentation SunPy ».

La description est ignorée car elle est identique au titre. Vous devriez extraire des parties pertinentes du contenu pour la propriété description.