ما الذي يجعل الموقع متوافقًا مع معاينات onebox؟

أود مساعدة مطوري إطار عمل بايثون التالي على التوافق مع Onebox في منصة Discourse الخاصة بنا لتعزيزه:

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

إذن، ما الذي يجعل الموقع متوافقًا مع Onebox؟ بحثت في Google عن Onebox ووصلت إلى صفحة GitHub هذه: https://github.com/discourse/onebox، لكن الإطار الذي ذكرته يستخدم Sphinx لتوليد بعض الصفحات تلقائيًا، فهل توجد إعدادات يمكن للمطورين ضبطها في Sphinx لجعل صفحاتهم متوافقة مع Onebox؟

إذا حاولت ربط https://docs.sunpy.org/en/v3.0.0/whatsnew/3.0.html في سطر منفصل، فستظهر لك هذه الرسالة:

عذرًا، لم نتمكن من إنشاء معاينة لهذه الصفحة الإلكترونية، لأن وسوم oEmbed / OpenGraph التالية لم يتم العثور عليها: description, image

تحتوي تلك الصفحة على وسم تعريف OpenGraph فارغ description، لذا لا يمكننا تضمينها. كما أنها تستخدم عناوين URL نسبية لبعض وسوم OpenGraph الأخرى، مثل image و url، وأنا غير متأكد مما إذا كان ذلك مدعومًا.

لذا قمتُ بإحالة المعلومات إلى فريق تطوير SunPy. اختبروا إصلاحًا مع هذه الصفحة: https://sunpy--5366.org.readthedocs.build/en/5366/، وقد تم التحقق منه بواسطة opengraph.xyz، الذي أفاد بأن جميع الوسوم مُعرَّفة في ملف HTML:

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

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

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

ومع ذلك، لا يزال الأمر لا يعمل في مثيل Discourse لدينا، ولا نزال نحصل على الخطأ: oEmbed / OpenGraph tags could not be found:description, image

هل هناك شيء لا يرونه؟ إليك موضوعنا على GitHub بشأن هذه المشكلة: onebox-compatible documentation for promoting SunPy's features and updates · Issue #5362 · sunpy/sunpy · GitHub

هل هذه مدخلة فعلية؟ يجب أن يكون الوصف أطول، ويحتوي على جزء من المحتوى الفعلي في الصفحة، وليس عنصرًا نائلاً مثل “توثيق SunPy”.

يتم تجاهل الوصف لأنه مطابق للعنوان. يجب عليك استخلاص أجزاء ذات صلة من المحتوى في خاصية الوصف.