الرياضيات لا تظهر في المشاركات المدمجة

لديك بعض المنشورات المضمنة داخل موقعك. لا يتم عرض الرموز الرياضية فيها ضمن عناصر التضمين.

باستخدام الإضافة القديمة، كان بإمكاننا تطبيق تصحيح على ملف embed.js.erb لعرض الرياضيات بشكل صحيح. هل هناك ما يمكننا فعله باستخدام discourse-math لجعل ذلك يعمل في عناصر التضمين؟

إليك مثال على ما أعنيه (انتقل إلى أسفل الصفحة).

شكرًا لك!

يبدو أن الحل موجود في آخر تعليق في موضوع GitHub الذي أشرت إليه:

هل جربته؟

نعم، وهذا يعمل مع امتداد الطرف الثالث القديم discourse-mathjax. ومع ذلك، فقد طوّر discourse امتداد discourse-math الخاص به، ولا يعمل هذا الحل.

لا أعتقد أن المشكلة تكمن في الإضافة. فالإضافة الجديدة لا تزال تستخدم فواصل الرياضيات (كما يمكنك رؤيته إذا قمت بفحص مصدر صفحتك)، لذا يجب أن يظل الحل فعالاً. ما قد يكون قد تغير منذ ذلك الحين هو طريقة تضمين منشورات Discourse للكود؟

لتوضيح الأمر، هل تقترح أن هذا التصحيح يجب أن يعمل؟

@@ -70,5 +70,11 @@
   </head>
   <body>
     <%= yield %>
+    <script type="text/x-mathjax-config">
+       MathJax.Hub.Config({
+        extensions: ["jsMath2jax.js"]
+      });
+    </script>
+    <script src="//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
   </body>
 </html>

حاليًا، لا أرى أي كود في قسم التعليقات المدمج لديك؟
هل يمكنك التحقق من أنك تطبق التصحيح فعليًا؟

./launcher enter app
cat app/views/layouts/embed.html.erb

المشكلة مع ذلك التصحيح قد تكون أنه يحاول تحميل JavaScript من mathjax.org، والذي أعتقد أن نسخة Discourse الحالية تمنعه افتراضيًا؟ قد تحتاج إلى إضافة https://cdn.mathjax.org إلى إعدادات موقع cors origins.

إعجابَين (2)

قد يكون هذا هو السبب! الآن، هل إعداد cors origins سيكون على خادم discourse الخاص بي أم على خادم الويب الذي أقوم بالتضمين فيه؟

إحدى إعدادات Discourse.

إعجابَين (2)

لقد حلّ هذا مشكلتي! شكرًا جزيلاً على هذه المساعدة؛ لم يخطر ببال أبدًا أن إعدادات الموقع الأمنية قد تكون السبب.

شكرًا جزيلاً!

إعجابَين (2)

أتساءل عما إذا كان بإمكاننا فعل شيء أفضل هنا. @sam، هل هناك طريقة لملحق ما لتعديل app/views/layouts/embed.html.erb؟ بحيث يمكن لـ Discourse تحميل JavaScript الخاص بـ MathJax/KaTeX داخل الإطار المضمن؟

أنا بالتأكيد أؤيد إجراء مثل هذا التغيير. ومع ذلك، قد نحتاج إلى إضافة نوع من الخطاف في النواة، مثل: (ربما embed_javascripts في discourse/lib/discourse_plugin_registry.rb at 7829558c6d42b5f0dfbb0c2351fb332a940d651e · discourse/discourse · GitHub).

4 إعجابات

تم إغلاق هذا الموضوع تلقائيًا بعد 1236 يومًا. لم يعد الرد على المواضيع الجديدة مسموحًا به.