سياسة النقاش

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

الميزات

تشارك سياسة Discourse الكثير من بنيتها الأساسية مع الاستطلاعات، وهدفها هو ضمان قبول أعضاء المجموعة لسياسات معينة عن طريق النقر على زر.

تتميز ببعض الميزات المحددة التي تميزها عن الاستطلاعات:

  1. يجب أن تنطبق على مجموعة.

  2. يمكنها تذكير أعضاء المجموعة إما أسبوعيًا أو يوميًا بالنقر على زر “قبول” للسياسة.

  3. تجعل تجربة المستخدم من السهل جدًا معرفة من قبل ومن لم يقبل السياسة.

التكوين

لقطات الشاشة

قبل النقر على قبول

بعد النقر على الشخص “الرمادي” في الزاوية العلوية اليمنى

بعد النقر على قبول

إنشاء سياسة

تسجل سياسة Discourse عنصر BBCode مخصصًا [policy]. مما يعني أنك بحاجة إلى كتابة هذا الكود في مشاركتك حيث تريد عرض هذه السياسة.

[policy group=founders reminder=daily]
أوافق على أن هذه السياسة ستزعجني يوميًا حتى أقوم بالنقر على قبول
[/policy]

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

إعدادات الموقع

policy_enabled : تمكين إضافة سياسة Discourse على الموقع.

policy_restrict_to_staff_posts: يمكن أن تظهر السياسات فقط في منشورات الموظفين.

policy easy revoke : إظهار زر القبول وإلغاء القبول في نفس الوقت.

سمات BBCode

يمكن لعنصر [policy] قبول السمات التالية.

  • group: اسم المجموعة التي ستطبق عليها السياسة مطلوب
  • version: رقم إصدار السياسة، ارفع الرقم لإجبار جميع المستخدمين على إعادة قبول السياسة
  • reminder: تذكير أعضاء المجموعة بقبول السياسة (أسبوعيًا أو يوميًا)، اختياري، الافتراضي مغلق
  • accept: النص المستخدم لزر القبول، الافتراضي هو “قبول السياسة”
  • revoke: النص المستخدم لزر إلغاء القبول، الافتراضي هو “إلغاء قبول السياسة”
  • renew: عدد الأيام أو النص الذي يصف الفترة (شهريًا، ربع سنويًا أو سنويًا) التي يجب بعدها على المستخدم إعادة قبول السياسة
  • renew-start: التاريخ الأول الذي ستبدأ فيه التجديدات، مثل: 17-10-2017، مفيد إذا كنت تريد تحديد وتيرة التجديد بحيث تحدث كل نصف عام (يناير، يونيو)
  • add-users-to-group: يقبل مجموعة واحدة كمدخل؛ سيتم إضافة المستخدمين الذين قبلوا السياسة تلقائيًا إلى هذه المجموعة (عند إلغاء السياسة يدويًا أو إذا تم تحديث إصدار السياسة، سيتم إزالة المستخدم/المستخدمين من المجموعة)
  • private: إخفاء المستخدمين الذين قبلوا أو لم يقبلوا السياسة

:information_source: تعمل المهمة الخلفية لـ فحص تذكيرات السياسة كل 6 ساعات. إذا تم تعيين عنصر reminder إلى أسبوعي أو يومي، فسيتم إرسال إشعارات تذكير للمستخدمين الذين لم يقبلوا سياسة معينة فقط إذا لم يكونوا قد تلقوا إشعار تذكير للسياسة خلال الأسبوع أو اليوم السابقين.

أمثلة الاستخدام

سياسة أساسية:

[policy group="team" reminder="daily" accept="قبول" revoke="تجاهل" version="1"]
لقد قرأت وفهمت واعترفت بهذه السياسة.
[/policy]

رفع رقم الإصدار، لإلزام الجميع بقراءة التحديث:

[policy group="team" reminder="daily" accept="قبول" revoke="تجاهل" version="2"]
لقد قرأت وفهمت واعترفت بهذه السياسة. (آخر تحديث [date=2020-04-23 timezone="America/Los_Angeles"])
[/policy]

مهمة تدقيق دورية:

[policy group="audit_committee" reminder="weekly" renew="90" renew-start="01-07-2019" version="1" accept="اكتمل التكليف"] 
لقد تأكدت من تعيين شخص لهذه المهمة الدورية للتحقق كل ربع عام.
[/policy]

سجل التغييرات

المهام المعلقة

  • تذكير فوري اختياري للسياسات الجديدة
  • السماح لمجموعات معينة بتطبيق السياسات (التوسع على الموظفين)
65 إعجابًا
How to make users to explicitly agree to ToS
Have-to-read topics? (or RSVP topics)
Plugin to maintain group membership based on accepting a Policy
Ability to view if PM has been read (Moderation ability?)
Group Membership base on accepting a Discourse Policy
Force existing users to accept ToS
How to get email notifications when new users have signed up?
Improving Discourse Policy for large groups
Dashboard Report - Unaccepted Policies
Is there a plugin that helps with Age Verification on the site?
Restrict posting in a category until they "like" a topic
Restrict posting in a category until they "like" a topic
Topic should be a notification
Plugin or other option to require a post and a like?
Watching category mandatory
Policy reminder cannot be left empty
Bundling more popular plugins with Discourse core
Age prompt for NSFW catagories
Button to join group on post
Bump topic with API
Publish group read state
Delivered and read notifications?
Habit tracking within Discourse...is it possible?
Changing policy texts
Agree to additional terms before joining group
Know who has viewed your post
How can I compare arbitrary revisions of a post?
Require accepting new terms (after changes) as a modal inside forum
Tips into building a community aside a variety of already existing tools
How to force existing users to accept ToS
Plugin to gather approvals / signatures on an initiative?
Recommnded plugins for supporting a tech community run by a big enterprise?
AUP location
I can't display my policy
Best practices for communicating to user base

تم تقسيم منشورين إلى موضوع جديد: هل يجب قصر إنشاء السياسات على الموظفين فقط؟

تم تقسيم 4 مشاركات إلى موضوع جديد: هل من الممكن منع إلغاء الموافقة على سياسات معينة؟

يبدو أنه تمت إزالة الحد 200 و policy_max_group_size مع هذا الالتزام. هل فاتني شيء؟

3 إعجابات

تم تقسيم 6 مشاركات إلى موضوع جديد: People receiving reminders even though they’ve accepted the policy

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

إزالة display: flex على .cooked .policy .user-lists يجعلها تبدو جيدة على سطح المكتب:

انتهى بي الأمر باستخدام CSS التالي:

/* اجعل قائمة مستخدمي السياسة لا تفيض */
.cooked .policy .user-lists {
    display: block;
}
3 إعجابات

حدث خطأ بعد تثبيت المكون الإضافي. لا أعرف السبب. شيء متعلق بـ “أثناء محاولة تحميل /admin/dashboard/general.json”.

خطأ في الخادم

أثناء محاولة تحميل [/admin/plugins]

رمز الخطأ: خطأ 500

عفوًا

واجه البرنامج الذي يشغل منتدى المناقشة هذا مشكلة غير متوقعة. نعتذر عن الإزعاج.

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

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

مرحباً،

هل ستظهر أزرار القبول/الرفض إذا كانت السياسة ضمن موضوع فئة مغلق لا يسمح بالردود؟

شكراً

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

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

مرحبًا لدي سؤال:
نريد استخدام إضافة Discourse Policy لـ: إجبار المستخدمين الجدد على الموافقة على شروط الخدمة (ToS). المتطلبات:

  • إذا لم يوافقوا ← لا يمكنهم استخدام المنتدى (يمكنهم فقط رؤية صفحة شروط الخدمة)
  • عندما يوافقون ← يمكنهم استخدام المنتدى + الحصول على شارة “ToS”

كان حلي هو إنشاء موضوع جديد وأضفت فيه ما يلي:
[policy group=trust_level_0 reminder=daily add-users-to-group=tos_accepted accept=“أوافق على الشروط” version=“1”]
بالنقر فوق “أوافق على الشروط”، أؤكد أنني قرأت شروط الخدمة وأوافق عليها.
[/policy]

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

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

إعجابَين (2)

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

ما لدي الآن هو هذا:


بعد ذلك، يمكن للمستخدم الوصول إلى صفحتنا بشكل طبيعي.

هل هناك أي طريقة للقيام بذلك وشكراً.

:partying_face: تم تضمين هذه الإضافة الآن مع Discourse الأساسي كجزء من Bundling more popular plugins with Discourse core. إذا كنت تستضيف بنفسك وتستخدم الإضافة، فأنت بحاجة إلى إزالتها من app.yml قبل الترقية التالية.

3 إعجابات

سيكون من الجيد لو أضفت القدرة على إزالة المستخدمين من مجموعة عند قبولهم أو رفضهم.

حتى الآن، هذه الميزة تنبه المستخدمين فقط (اختياريًا) وتضيف - إلا إذا كنت أفوت شيئًا ما.

شكرًا!

إعجابَين (2)