فشل في التنفيذ 'postMessage' على 'DOMWindow'

تم العثور على الحل - شكرًا لـ @simon و @Lilly على تجربة دعم لا تصدق.

العناصر التي تم تغييرها بناءً على نصيحة Simon:

تم تغيير الكود من البرنامج التعليمي لعدم تضمين المصطلحات المهملة وتضمين عبارة if:


<div id='discourse-comments'></div>
<meta name="discourse-username" content="ForumAdminName">

<script type="text/javascript">
  if (window.location.pathname.indexOf('/p/') < 0) {
  DiscourseEmbed = {
    discourseUrl: 'https://forum.test.com/',
    discourseEmbedUrl: '{{url absolute="true"}}',
    // className: 'CLASS_NAME',
  };

  (function() {
    var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
    d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
  })();
}
</script>

بالإضافة إلى ذلك، تمت إضافة https://www.test.com و https://test.com
إلى إعداد src لسياسة أمان محتوى موقع Discourse الموجودة في قسم المسؤول في Discourse > علامة التبويب الإعدادات.

ملاحظة - حسب تجربتي، قد لا ترى النتائج لمدة 30 ثانية تقريبًا عند تحديث الصفحة بسرعة كبيرة أثناء استخدام خادم صغير، لذا امنح كل إعادة تشغيل شبحية وكل تعديل في لوحة تحكم المسؤول في Discourse بضع دقائق لتأثيرها.

ملاحظة إضافية - هناك تأخير طويل عند التحقق من قسم التعليقات لأي مقال لأول مرة، ويوصي @simon دائمًا بالتحقق من المقال بنفسك أولاً، حتى يكون لدى Discourse وقت لإنشاء أقسام التعليقات المرتبطة بمنشور المنتدى.

شكرًا مرة أخرى للجميع، لقد كان ذلك مفيدًا للغاية. العديد من معلقي YouTube على البرنامج التعليمي الذي شاهدته واجهوا نفس المشكلات التي واجهتها، والتي أشارت إلى تعليمات التكامل بين Discourse و Ghost. قد تكون روابط YouTube مهملة، لذا كان هذا المساعدة رائعًا.

4 إعجابات