تعليقات Discourse لا تظهر في الصفحة الأحدث

مرحبًا،

أواجه مشكلة غريبة ولا أعرف ما الذي يحدث.

بمجرد ربط أحد صفحات قصصتي المصورة بموضوع Discourse، تظهر تعليقات Discourse بشكل متسق. ولكن لسبب غريب، لا يحدث ذلك في الصفحة الحالية:

هذا هو موضوع Discourse:

أشعر أنني أقوم بنفس الشيء تمامًا الذي قمت به في عشرات الصفحات السابقة التي نشرتُها:

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

من الممكن دائمًا أن يكون الخطأ من المستخدم. هل لديك أي تخمينات حول ما قد أكون أخطأت فيه هنا؟

أي مساعدة ستكون مُقدَّرة جدًا. شكرًا!

يبدو هذا مشابهًا إلى حد ما لمشكلة واجهتها، حيث كان عدد التعليقات يعرض رقمًا غير صحيح (أحيانًا صفر). نحن لا نعرض التعليقات الفعلية. في حالتك، يظهر العدد 9، لكن لا يتم عرض أي منها.

لا يبدو أن الخطأ ناتج عن المستخدم. أرى أن قالب “التعليقات غير متوفرة” يُعرض أسفل المنشور. هل يمكنك الانتقال إلى شاشة تعديل المنشور في ووردبريس وتمكين الحقول المخصصة؟ إذا كنت تستخدم محرر الكتل الجديد، فسيتم تمكين الحقول المخصصة بالنقر على رابط “الخيارات” في الشريط الجانبي.

أخبرني إذا كانت القيم مُعيّنة لكل من حقلي discourse_comments_raw و discourse_permalink المخصصين.

شكرًا لك على الرد السريع والمفيد، سيمون. إليك ما أراه في الحقول المخصصة الخاصة بي لتلك الصفحة (لا أعتقد أنني أرى حقل discourse_comments_raw، رغم ذلك)

أخبرني إذا كنت بحاجة إلى أي شيء آخر.

شكرًا لك! سألقِي نظرة على ما يحدث بهذا غدًا.

أنا غير متأكد من سبب عدم تعيين حقل المخصص للمقال discourse_comments_raw لهذا المقال. هل لديك أي مقالات على موقعك نُشرت إلى Discourse بعد نشر هذا المقال؟ هل يمكنك التحقق من تبويب إعدادات اتصال WP Discourse للتأكد من أنك لا تزال ترى إشعار “أنت متصل بـ Discourse”؟

مرحبًا سيمون!

إليك ما يظهر في تبويب إعدادات الاتصال الخاص بي:

الصفحة التالية التي سيتم نشرها بعد الصفحة التي تواجه مشكلة فيها سيتم إصدارها الليلة (مفتوحة بالفعل)، لذا سنرى ما إذا كانت المشكلة ستستمر.

لا أدري ما إذا كان هذا عاملًا مؤثرًا أم لا، لكنني أقوم بخطوة خاصة نوعًا ما لتمكين رعاةي من التعليق على “صفحة معاينة” مقفلة مسبقًا دون إفساد أي شيء للقراء العاديين. وتُعد هذه القدرة سببًا رئيسيًا يدفعني لاختيار تثبيت نظام Discourse.

إليك الإجراء الذي أتبعه. (والذي نجح لأكثر من عام مع تحديثات مرتين أسبوعيًا.)

  1. أولًا، أنشر صفحة الكوميكس لراعيي. وهي مقفلة على موقع الكوميكس الخاص بي. على سبيل المثال، هذه هي صفحة المعاينة المقفلة الحالية لراعيي والتي سأقوم بفتحها للقراء العاديين لاحقًا الليلة:
  1. في نفس الوقت الذي أنشر فيه صفحة المعاينة هذه، أستخدم إضافة WP-Discourse لإنشاء موضوع مرتبط لتلك الصفحة في مجتمع Discourse الخاص بي ضمن فئة “فقط لرعاة باتريون” (“صفحات المعاينة السرية”) باستخدام صندوق الميتا الخاص بـ Discourse في ووردبريس.

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

  1. للتأكد من أن لا أحد من الجمهور العام يمكنه رؤية تلك التعليقات على صفحة المعاينة على موقع الكوميكس الخاص بي، بمجرد نشر صفحة المعاينة، أضغط على “إلغاء ربط المنشور من Discourse” لتلك الصفحة في صندوق الميتا الخاص بـ Discourse لتلك الصفحة ثم أقوم بتحديث الصفحة.

  2. بعد حوالي 3 أيام، أقوم بفتح صفحة المعاينة للجمهور العام وأنتقل بموضوع Discourse لتلك الصفحة من فئة “فقط لرعاة باتريون” صفحات المعاينة السرية إلى فئة تحديثات الصفحات المفتوحة. في ذلك الوقت، أضغط على “الربط بالموضوع الموجود” في صندوق الميتا الخاص بـ Discourse على ووردبريس لتلك الصفحة وأضيف عنوان URL الخاص بـ Discourse الذي كان رعاي يستخدمونه للتعليق على الصفحة، ثم أقوم بتحديث الصفحة.

هذا يسمح للجمهور العام الآن برؤية التعليقات التي قام بها رعاي على هذه الصفحة عندما كانت مقفلة. وهكذا، يحصل رعاي على أولوية التعليق على كل صفحة منشورة، لكن لا يتم إفساد أي شيء حتى يتم فتح الصفحة.

الصفحة التي نتحدث عنها الآن (الصفحة 29) هي أحدث صفحة تم فتحها على موقعي. الليلة، سنقوم بفتح الصفحة التالية (الصفحة 30).

أتمنى أن يكون ذلك واضحًا… أعرف أنه قد يبدو معقدًا، لكن هذا ما كنت أفعله لأكثر من عام وقد نجح تمامًا. لكنني أردت أن أنبهك، في حال كان هذا قد يكون عاملًا مؤثرًا.

يرجى إخباري إذا كانت هناك أي طريقة أخرى يمكنني من خلالها المساعدة.

شكرًا لك!

أليكس

هذا الأمر معقد إلى حد ما، لكنني لا أرى أين قد يفشل الإجراء. أخبرني بما يحدث عند فتح الصفحة التالية.

تم فتح الصفحة التالية، وتظهر تعليقات Discourse بشكل ممتاز:

لكنها لا تزال غير ظاهرة في الصفحة السابقة…

لا أعرف ما الفرق بينهما…

من الغريب أن فك الارتباط ثم إعادة ربط المنشور بـ Discourse لا يحل المشكلة. عند فك ارتباط المنشور بموضوع في Discourse، يتم حذف جميع البيانات التي تربط المنشور بـ Discourse. هل يمكنك المحاولة مرة أخرى بفك الارتباط ثم إعادة ربط المنشور؟ وأخبرني بما يحدث.

مرحبًا سيمون،

لقد ألغيت الإعجاب بالمنشور وأكدت أنه تم إلغاء ربطه.

ثم قمت بإعادة ربطه

مسحت جميع ذاكرات التخزين المؤقت لدي، لكنني لا أزال لا أرى أي منشورات من Discourse.

إليك بيانات التعريف (metadata):

وللمعلومية فقط، إليك بيانات التعريف للصفحة التالية التي تعرض تعليقات Discourse:

هل يساعدك ذلك في شيء؟ هل هناك أي شيء آخر يجب أن أجربه؟

شكرًا لك! نعم، هذا يساعد. يجب أن يتم تعيين بيانات التعريف discourse_comments_raw عند تصفح الصفحة، لكن هذا لا يحدث. سأحاول تكرار المشكلة.

هل تستخدم أي إضافات تخزين مؤقت (caching plugins) على موقع ووردبريس الخاص بك؟ إذا كان الأمر كذلك، هل يمكنك محاولة مسح ذاكرة التخزين المؤقت لتلك الصفحة؟

يسعدنا أن يكون ذلك مفيدًا. أنا أستخدم W3TC.

وفي كل مرة قمت فيها بالتحديث، قمت بتنظيف جميع الذاكرة المؤقتة.

وقد قمت بذلك مجددًا الآن. للأسف، لا ألاحظ أي تغيير.

شكرًا لك على مساعدتك!

أليكس

ما زال غير واضح بالنسبة لي لماذا توجد مشكلة في استرداد التعليقات لهذا الموضوع تحديدًا.

هل يمكنك التحقق مما إذا كنت قد فعّلت خيار “تخزين HTML للتعليقات” (Cache Comment HTML) الخاص بالإضافة؟ يُوجد هذا الخيار في أسفل تبويب إعدادات التعليقات. من غير المرجح أن يتسبب هذا الإعداد في المشكلة، ولكن إذا كان مفعّلًا، جرب تعطيله لتبسيط الأمور.

هل قمت بتفعيل إعداد “مزامنة بيانات التعليقات” (Sync Comment Data) الموجود في تبويب الويب هوكس (Webhooks)؟ إذا كان الأمر كذلك، جرب تعطيل هذا الإعداد مؤقتًا ثم قم بتحديث الصفحة.

إذا لم تحل أي من الحالتين السابقتين المشكلة، هل يمكنك إخباري بقيم بعض الإعدادات في تبويب إعدادات التعليقات لديك؟ الإعدادات التي قد تؤثر على الأمر هي تلك التي تبدأ بـ “الحد الأقصى للتعليقات الظاهرة” (Max Visible Comments) وتنتهي بـ “استيراد التعليقات التي أعجب بها المشرف فقط” (Only import moderator liked). تُمرَّر هذه القيم إلى Discourse ضمن طلب استرداد التعليقات.

هل قمت بإجراء أي تغييرات على كود إضافة WP Discourse، أو قمت بالربط بأي من فلاتر الإضافة عبر قالب موقعك؟