مراجعة Discourse السنوية

:discourse2: ملخص ينشئ مراجعة سنوية لـ Discourse موضوعًا في الأول من يناير يلخص نشاط المنتدى في العام السابق. (راجع أمثلةنا هنا في Meta - year-in-review)
:hammer_and_wrench: رابط المستودع https://github.com/discourse/discourse-yearly-review
:open_book: دليل التثبيت كيفية تثبيت الإضافات في Discourse

الإعداد الأولي

انتقل إلى صفحة /admin/plugins الخاصة بك للنقر على زر الإعدادات :gear: إعدادات لـ discourse-yearly-review:

إعدادات المراجعة السنوية

  1. أدخل الفئات لاستخراج البيانات منها في إعداد yearly review categories. إذا تركت فارغًا، فسيكون الافتراضي هو أعلى 5 فئات عامة.

  2. باستخدام إعداد yearly review publish category، اختر فئة وجهة للنشر فيها المراجعة.

    :bulb: يُوصى بشدة بتعيين yearly review publish category إلى فئة الموظفين أو أي فئة خاصة أخرى بحيث يمكنك عرض الموضوع قبل جعله عامًا. قد ترغب أيضًا في تعديله أولاً.

  3. ثم، فعّل الإضافة باستخدام إعداد yearly review enabled.

الميزات

كما ترون في 2022: The Year in Review تُعرض البيانات في قسمين: المستخدمين والمواضيع.

يشمل قسم المستخدمين:

  • أكثر وقت قراءة
  • أكثر مواضيع تم إنشاؤها
  • أكثر ردود تم إنشاؤها
  • أكثر المواضيع التي تم الرد عليها
  • أكثر إعجابات مُعطاة
  • أكثر إعجابات مُستلمة
  • أكثر زيارات
  • المستخدمين الذين مُنحوا شارة مميزة (تُحدد الشارة عبر إعداد موقع yearly review featured badge)

يشمل قسم المواضيع:

  • الأكثر قراءة
  • الأكثر إعجابًا
  • الأكثر ردًا عليها
  • الأكثر شعبية
  • الأكثر تحفيظًا

إنشاء المراجعة السنوية

تضع الإضافة عتبات لتحديد المواضيع التي سيتم عرضها. يجب أن يكون هناك حد أدنى من 10 إعجابات أو ردود، أو 5 تحفيظات، أو درجة 10، أو ساعة قراءة واحدة قبل عرض الموضوع. يُنشر الموضوع تلقائيًا عبر مهمة خلفية. تتحقق المهمة من أن الإضافة مفعلة وأن الوقت ضمن أول 31 يومًا من الشهر الأول من السنة. ثم تتحقق لمعرفة ما إذا كان موضوع بعنوان yearly_review.topic_title قد نُشر بالفعل بواسطة مستخدم النظام. إذا اجتازت جميع الفحوصات، يُنشر الموضوع في الفئة المحددة في إعداد yearly review publish category. إذا لم يتم تكوين ذلك، سيتم نشر الموضوع في فئة “غير مصنفة”.

خيارات إضافية

فئات المراجعة السنوية

الفئات المستخدمة في هذا القسم هي تلك المحددة في إعداد موقع yearly review categories. إذا لم يتم تكوين هذا الإعداد، فسيتم اختيار أفضل 5 فئات عامة من المنتدى. يُحدد “الأفضل” بناءً على عدد topics_year للفئة.

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

استبعاد الموظفين من المراجعة السنوية

تتمتع الإضافة بإعداد yearly review exclude staff. وهو مفعّل افتراضيًا بحيث يتم استبعاد أعضاء الفريق من قسم المستخدمين، واستبعاد المواضيع التي أنشأها أعضاء الفريق من قسم المواضيع.

شارة مميزة للمراجعة السنوية

يمكن تعيين شارة مميزة عبر إعداد yearly review featured badge. يتم عرض حد أقصى من 15 مستخدمًا للشارة. إذا تم منح هذه الشارة لأكثر من 15 مستخدمًا، فسيتم عرض رابط لصفحة الشارة. إذا لم يتم تكوين yearly review featured badge، فلن يتم عرض هذا القسم.

تشغيل المراجعة السنوية يدويًا

إذا كنت لا ترغب في الانتظار حتى تكتمل المهمة الخلفية، فيمكنك نشر الموضوع من وحدة تحكم Rails باستخدام:

Jobs::YearlyReview.new.execute(force: true)

إذا كنت ترغب في إنشاء تقرير لسنة معينة، فأضف ببساطة review_year: 'السنة'، على سبيل المثال:

Jobs::YearlyReview.new.execute(force: true, review_year: '2021')

:discourse2: مستضاف لدينا؟ إذا كنت ترغب في تشغيل المراجعة السنوية يدويًا، فيمكنك الاتصال بنا على team@discourse.org وسنكون سعداء بترتيب ذلك لك.

الإعدادات

الاسم الوصف
yearly review enabled تمكين المراجعة السنوية.
yearly review categories الفئات العامة لاستخراج المواضيع منها. سيتم اختيار أعلى 5 فئات من هذه المجموعة. إذا تركت فارغًا، فسيكون الافتراضي هو أعلى 5 فئات عامة.
yearly review exclude staff استبعاد الموظفين من إحصائيات المستخدمين.
yearly review include user stats إضافة إحصائيات تحديد الهوية إلى المنشور الأول لموضوع المراجعة.
yearly review include private categories تضمين نشاط المستخدم من الفئات الخاصة أو المقيدة بالقراءة في المراجعة.
yearly review publish category الفئة التي سيتم نشر المراجعة فيها.
yearly review featured badge أدخل اسم الشارة بالكامل. يمكن تركه فارغًا.

:discourse2: مستضاف لدينا؟ تتوفر هذه الإضافة على جميع مستويات الاستضافة لدينا Yearly Review | Discourse - Civilized Discussion


مشاكل معروفة

  • تُعرض البيانات في جداول HTML. تُحاط الجداول بعلامات div تحتوي على سمات data-review-topic-users="true' و data-review-featured-topics="true". يسمح ذلك بتنسيق الجداول عند عرضها على Discourse. لا يتم نسخ الأنماط عند إنشاء رسائل البريد الإلكتروني للمواضيع. لا تبدو رسائل البريد الإلكتروني المرسلة للموضوع رائعة.

  • المنشور الأول في الموضوع المولد يبلغ طوله ≈ 40,000 حرف بسبب استخدام HTML. نتيجة لذلك، لا يمكن تعديله ما لم تزيد حد أحرف الجسم فوق هذا الرقم أولاً (انظر Body is limited to 32000 characters; you entered 43659)

  • لا يتم عرض الرموز التعبيرية في عناوين روابط المواضيع المميزة

90 إعجابًا

بعض التحسينات الرائعة التي يمكن إجراؤها على هذا المكون الإضافي، آمل أن أشارك هذا في المكان الصحيح؟ أخبرني إذا لم يكن كذلك.

  • القدرة على استبعاد الموظفين من قائمة المستخدمين، ولكن لا يزال تضمين الموضوعات التي ينشئونها
  • القدرة على استبعاد TL4 من قائمة المستخدمين (ومثل أعلاه، لا يزال تضمين الموضوعات التي ينشئونها)
  • القدرة على إنشاء منشورات مراجعة متعددة حتى نتمكن من الحصول على واحدة لـ TL4 (نستخدم هذا للموظفين) وأعضاء هيئة التدريس، ثم الحصول على منشور لأعضاء المجتمع فقط
5 إعجابات

مرحباً!
لقد قمت بتثبيت الإضافة هذا العام، ولكن على الرغم من تمكينها، لا أعرف متى يتم نشر المراجعة، أو ما إذا كان يجب عليّ فعل أي شيء آخر لنشرها.
هل يمكن لأي شخص إخباري؟
شكراً جزيلاً!!

إعجابَين (2)

تحياتي @Ayelen_Rives،

عند فحص لوحة التحكم الإدارية، ستُعرض لك المساعدة البصرية التالية:

المزيد من التدقيق داخل المكون الإضافي بعنوان ‘plugin:discourse-yearly-review’ يكشف عن مثال توضيحي آخر:

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

6 إعجابات

شكراً جزيلاً لك يا آرون!

بشكل غير متوقع، لا أرى تلك الرسائل في لوحة التحكم الإدارية، ولا في الإعدادات:

فئة النشر هي “الموظفون”، لذا سأكتشف في 1 يناير إذا تم إنشاؤها.

شكراً مرة أخرى وعطلة سعيدة!

إعجابَين (2)

سنة جديدة سعيدة! :partying_face:

لم يتم تشغيل المكون الإضافي هنا في منتدين. والآن يعرض الرسالة الخاصة بتاريخ 1 يناير 2025. غريب.

لقد قمت بتشغيله يدويًا في وحدة تحكم rails في أحد المنتديات وعاد باللغة الإنجليزية، وليس الألمانية، وهي لغة المنتدى.

هناك خطأ ما / كان هناك خطأ ما هنا.

إعجابَين (2)

لم يصل إلى هنا على ميتا بعد أيضًا. لقد اتبعت النصيحة وقمت بتعيينه للنشر على #staff أولاً، وهو ما أعتقد أنه الاختلاف الوحيد عن العام الماضي؟

كنت آمل أن يظهر بشكل سحري مع قليل من الصبر، لكن ربما أكون متفائلاً.

إعجابَين (2)

لم أقم بتغيير أي شيء في الإعدادات، حتى المنتدى للتحقق منه أولاً كعضو في فريق العمل ثم نقله،

في منتداي الثاني لا يوجد شيء بعد. والساعة الآن 11:24 صباحًا لدي.

يبدو أن هناك خطأ ما.

هل هناك حاجة لعلم لغة عند تشغيله يدويًا؟ لا أريد ترجمة كل شيء في المنتدى الثاني أيضًا. :wink:

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

قد أكون مغريًا لترك الأمر لفترة أطول لمعرفة ما إذا كان هناك تأخير في المهمة الخلفية، لكنني لست متأكدًا أيضًا من سبب إعطاء تشغيلها يدويًا نتيجة مختلفة عن تشغيل المهمة الخلفية بنفسها؟

قد نحتاج إلى شخص أكثر معرفة للمساهمة.

3 إعجابات

لم يعمل تلقائيًا ولكني قمت بتشغيله يدويًا ويبدو أنه عمل بشكل جيد، على الرغم من أنني لم أكن أريده بلغة مختلفة.

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

صباح اليوم تقريبًا، أخبرني sidekiq أن المراجعة السنوية ستتم جدولتها في غضون 50 دقيقة، وفي الوقت الحالي سيكون ذلك حوالي الساعة 11 صباحًا بالتوقيت المحلي. لم أنتظر، على الرغم من ذلك، وقمت بذلك يدويًا. لم تكن هناك مشاكل وكانت اللغة صحيحة أيضًا.

بعد ذلك، اضطررت إلى تخفيض رتبة المشرفين لدي وإعادة تشغيل sidekiq لأنهم كانوا مستائين حقًا - لقد استبعدت الموظفين… لم أستطع السماح للموظفين لأنني كمسؤول نشط حقًا كنت سأسيطر على القوائم تمامًا، لذلك اخترت أسرع طريق.

حسنًا، هذه قصة مختلفة، ولكن هل يمكن أن يكون لدينا المزيد من الحرية في تضمين أو استبعاد المجموعات؟

إعجابَين (2)

يا إلهي… في المنتدى الآخر، يوجد موضوع 2023… الساعة 2:31 مساءً بالتوقيت المحلي. وباللغة الألمانية. لذا، لا يزال غامضًا…

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

لقد قمت بتشغيل نظامنا من Sidekiq في النهاية. :rocket:

إعجابَين (2)

على مواقعي، تم إنشاء الموضوع دون الحاجة إلى تشغيله يدويًا في sidekiq.

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

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

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

إعجابَين (2)

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

ليس بالأمر الكبير، مع ذلك.

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

مرحباً! لحسن الحظ، قام المكون الإضافي بتشغيل نفسه في الأول من يناير دون أي مشكلة! :raised_hands:

أنا الآن لدي بعض الأسئلة حول كيفية عمله لأن بعض التقارير (مثل “أكثر المواضيع” و “أكبر عدد من الإعجابات المقدمة”) تظهر نتائج مختلفة عن صفحة المستخدمين لنفس الفترة.

على سبيل المثال، بالنسبة لـ “أكثر المواضيع”، تظهر صفحة المستخدمين أولاً المستخدم “S”:

ويظهر الاستعراض السنوي أولاً المستخدم “C” ولا يظهر المستخدم “S” أبداً في الجدول:

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

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

شكراً جزيلاً لمساعدتكم! :100:

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

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

خطوات التكرار:

  1. بمجرد إنشاء موضوع المراجعة السنوي، انقله إلى فئة مختلفة
  2. قم بتشغيل إنشاء موضوع المراجعة السنوي عبر /sidekiq
  3. يتم إنشاء موضوع المراجعة السنوي الثاني.

إذا واجهت هذه المشكلة، أقترح تعطيل المكون الإضافي. سننظر في هذا المكون الإضافي قريبًا لإصلاح الأخطاء وتحسينه قبل العام المقبل.

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

:thinking: ما مدى استمراريته؟ إذا واصلت حذفه، فهل سنظل نرقص في يونيو؟ :joy:

وهل هذا يعني أنني لست بحاجة إلى التواصل مع الدعم لإنشاء المنشور بأثر رجعي لموقعي؟ هل سيظهر غدًا؟

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

حقًا. إنه يعمل عبر Sidekiq كل يوم.

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

آمل أن يتوقف في نهاية يناير.

إعجابَين (2)