فئات مفقودة من `categories.json` على الرغم من وجودها في النظام (سمة مخصصة)

{“translation”: "لقد أنشأنا سمة مخصصة لمنصة Discourse حيث يتم عرض فئات معينة على الصفحة الرئيسية باستخدام JavaScript. يستخدم السكربت قائمة محددة مسبقًا من أسماء الفئات (كأماكن مفصولة بفواصل) لجلب وعرض المحتوى من /categories.json.

بينما يتم عرض معظم الفئات بشكل صحيح، هناك بعض الفئات مفقودة من الصفحة الرئيسية — على الرغم من أنها مضمنة صراحة في السكربت وتوجد في النظام مع معرفات فئات صالحة.

عند فحص استجابة /categories.json، وجدنا أن هذه الفئات المحددة غير مدرجة في الناتج الخاص بـ API على الإطلاق. ومع ذلك، فهي:

  • موجودة في نظام Discourse
  • هي فئات من المستوى الأعلى
  • تم تعيين everyone على الأقل بترخيص “عرض”
  • غير مؤرشفة أو مخفية أو متداخلة

نحاول فهم:

  1. في أي الظروف تتجنب Discourse إدراج الفئات في categories.json؟
  2. كيف يمكننا ضمان ظهور جميع الفئات الضرورية في تلك الاستجابة، خاصة إذا أردنا عرضها على الصفحة الرئيسية عبر كود مخصص؟

أي رؤى أو حلول موصى بها ستكون محل تقدير."}

لست متأكدًا، ولكن هل هذا على /latest؟ ربما يتضمن فقط الفئات التي تحتوي على مواضيع في قائمة المواضيع؟

إعجاب واحد (1)

هذا على أحدث إصدار من Discourse ولا يحتوي على أي مواضيع بعد… حاولت إنشاء موضوع وهمي في إحدى الفئات غير المرئية بناءً على معرف الفئة، بافتراض أنه سيستدعي JSON الفئات لسردها ولكنه لم يساعد وحذفت الموضوع الوهمي أيضًا.. حاليًا كلتا الفئتين لا تحتويان على أي مواضيع…

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

FWIW لقد أنشأت للتو فئة فارغة ويمكنني رؤيتها في /categories.json الخاص بي

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

إعجاب واحد (1)

ربما أربكتني الأمور. :melting_face: اعتقدت أن الأمر يتعلق بعدم تضمين /categories.json لفئات معينة لسبب غير معروف واعتقدت أنني سأحاول استبعاد الفئات التي لا تحتوي على مواضيع كسبب.

لا تهتم بي… :slight_smile:

إعجاب واحد (1)

ليس من الواضح أنني كنت الشخص الذي كان مرتبكًا. ويمكن أن نكون على حق. ما زلت غير واضح بشأن ما كان يبحث عنه OP.

إعجاب واحد (1)

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

قد تشارك الكود الخاص بك، ربما مع رابط إلى github

إعجابَين (2)

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

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