قوائم الشريط الجانبي لمجموعات Discourse

:information_source: ملخص إنشاء قوائم جانبية مخصصة لمجموعات محددة
:eyeglasses: معاينة انضم إلى مجموعة منشئ الثيمات هذا ثم عاين هنا
:hammer_and_wrench: المستودع \u003chttps://github.com/Lillinator/discourse-group-sidebar-menus\u003e
:question: دليل التثبيت كيفية تثبيت ثيم أو مكون ثيم
:open_book: جديد في ثيمات ديسكورس؟ دليل المبتدئين لاستخدام ثيمات ديسكورس

تثبيت مكون الثيم هذا

:woman_technologist:t2: نظرة عامة

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

الميزات الرئيسية:

  • رؤية القائمة المستندة إلى المجموعة - تظهر أقسام القائمة فقط في الشريط الجانبي للمستخدمين المصرح لهم
  • التكوين المستند إلى الكائنات - واجهة مستخدم إعدادات سهلة الاستخدام لإنشاء القوائم
  • أقسام متعددة - إنشاء عدد غير محدود من أقسام القائمة لمجموعات مختلفة (ضمن المعقول)
  • رابط التعديل السريع للمسؤول - أيقونة القلم في رؤوس القائمة توجه المسؤولين مباشرة إلى إعدادات المكون

:briefcase: بعض حالات الاستخدام

  • موارد خاصة بالموظفين وروابط سريعة
  • اختصارات لمشرفي الفئات
  • بوابات مجموعات مخصصة (فرق المشاريع، مجموعات الدراسة، نوادي الكتب، الأعضاء المهمون لكبار الشخصيات)
  • روابط لموارد مواقع الويب الأصلية أو الشريكة

:gear: الإعدادات

أقسام القائمة (menu_sections)

يفتح محرر إعدادات الكائنات لتكوين أقسام قائمة مجموعات مخصصة.

خصائص القسم

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

خصائص الرابط

الخاصية الوصف
الأيقونة اسم أيقونة FontAwesome (على سبيل المثال: circle-info، star، user-group). قد تحتاج إلى إضافتها إلى المسؤول > جميع إعدادات الموقع > مجموعة أيقونات svg
النص التسمية المعروضة للرابط
الرابط (URL) وجهة الرابط - يدعم المسارات النسبية (/faq، /my/preferences) وعناوين URL المطلقة (https://example.com)

:wrench: التثبيت والتكوين

  1. قم بتثبيت مكون الثيم وفقًا لـ Installing a theme or theme component.
  2. انتقل إلى محرر إعدادات الكائنات
  3. انقر على الزر + new_menu_section لإعداد قسم قائمة مجموعات مخصص أول.
  4. امنح القائمة الجديدة عنوانًا في حقل عنوان القائمة، ثم حدد المجموعات التي تريد أن يكون لها حق الوصول إليها.
  5. انقر على الزر + new_menu_section لإضافة قسم آخر، أو احفظ التغييرات.
لقطات شاشة تكوين المسؤول مع الإعداد التجريبي

تثبيت جديد - انتقل إلى محرر إعدادات الكائنات.

سيناريو تجريبي مع قائمتين مخصصتين و 3 مستخدمين، أحدهم مسؤول:

  • @Catra تحب القطط وهي عضو في مجموعة pink، والتي سيكون لها حق الوصول إلى قائمة القطط :grinning_cat:
  • @HelloKitty تحب الكلاب وهي عضو في مجموعة purple، والتي سيكون لها حق الوصول إلى قائمة الكلاب :dog_face:
  • @Lilly عضو في مجموعة purple لأنها تمتلك كلبًا والكلاب أفضل. ومع ذلك، هي أيضًا مسؤولة في المنتدى، وسيكون للمسؤولين حق الوصول إلى قائمة القطط لأن القطط تحتاج إلى مزيد من الإشراف :dog_face: :cat_with_wry_smile:

أنشئ قائمة مخصصة جديدة - لمثالنا، أنشئ قائمة القطط وأضف المجموعات المسموح لها بالوصول إليها - pink و admins. ثم انقر على الزر + menu_link لإعداد الروابط للقائمة الجديدة.

أضف روابط القائمة - 1. اسم أيقونة Fontawesome، 2. النص المراد عرضه للرابط، و 3. الرابط، نسبيًا أو مطلقًا. انقر على الزر + menu_link لإضافة رابط آخر إلى هذه القائمة.

أنشئ قسم قائمة مخصصة آخر يسمى قائمة الكلاب، وامنح مجموعة purple فقط حق الوصول وقم بتكوين الروابط:

لقطات شاشة الوصول إلى القائمة الجانبية الناتجة

المستخدم @Catra لديه قائمة القطط! :grinning_cat:

المستخدم @HelloKitty لديه قائمة الكلاب! :dog_face:

المستخدم المسؤول @Lilly لديه كلتا القائمتين ويمكنه تعديلهما! :smiling_cat_with_heart_eyes:

مثال التكوين

عنوان القائمة: "موارد الموظفين"
المجموعات المسموح بها: staff
الروابط:
  - الأيقونة: wrench
    النص: دليل الإشراف
    الرابط (URL): /t/moderation-guide/123
  - الأيقونة: chart-line
    النص: لوحة تحليلات
    الرابط (URL): /admin/dashboard

:light_bulb: ملاحظات هامة

وصول المسؤول

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

تكوين المجموعة

  • مجموعة everyone غير مدعومة - استخدم واجهة مستخدم تذييل الشريط الجانبي الأصلية لإنشاء قوائم مخصصة عامة لجميع المستخدمين، بما في ذلك الزوار المجهولون.
  • الحد الأقصى 20 مجموعة لكل قسم قائمة. إذا كنت بحاجة إلى المزيد، قم بإنشاء أقسام مكررة بتعيينات مجموعات مختلفة.
  • سيشاهد المستخدمون في مجموعات متعددة جميع أقسام القائمة التي لديهم حق الوصول إليها.

الاختبار والتنظيم

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

اعتبارات الأمان

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

:white_check_mark: تجربة تنقل نظيفة ومنظمة
:white_check_mark: تقليل فوضى واجهة المستخدم للمستخدمين غير المصرح لهم
:white_check_mark: بوابات احترافية خاصة بالمجموعة

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

اعتمد دائمًا على نظام الأذونات المدمج في ديسكورس لتأمين الموارد الفعلية:

  • تكوين أذونات الفئة بشكل صحيح
  • تعيين قيود رؤية الموضوع
  • استخدام عناصر التحكم في الوصول المستندة إلى المجموعة للمحتوى
  • التأكد من أن الموارد الخاصة تتطلب المصادقة

أفضل ممارسة للمسؤولين:
قم بتكوين أذونات أمان الفئة المرتبطة وعضوية المجموعة بشكل منفصل - على سبيل المثال: يجب أن يكون لرابط القائمة إلى فئة خاصة أذونات تلك الفئة مكوّنة بشكل صحيح. المسؤولون مسؤولون عن ضمان ترخيص الروابط إلى الموارد الخارجية بشكل مناسب للمجموعات المحددة.


كان هذا مشروعًا تعاونيًا مع @Moin - كانت مدخلاتها وإلهامها وملاحظاتها لا تقدر بثمن.

9 إعجابات

يبدو أنني أحصل على خطأ 404 على المستودع.

تعديل: كل شيء على ما يرام الآن!

إعجابَين (2)

haha حاول مرة أخرى. نسيت أن تجعله عامًا! :laughing:

6 إعجابات

رائع! كنت أرغب في هذا لبعض الوقت. لقد قمت ببناء مجموعة جيدة من قوائم الشريط الجانبي المخصصة المفيدة لنفسي - روابط للإشراف، وللمهام الإدارية والمرجع، ولتوثيق Discourse، ولمحتوى خارجي نشير إليه بشكل متكرر في المنتدى، وما إلى ذلك. إحدى القوائم تحتوي على روابط للاجتماعات الدورية المختلفة التي تستخدم ببساطة رابط tag، على سبيل المثال /tag/comm-mgt-monthly مما يساعدني على الانتقال بسرعة إلى جداول الأعمال والمحاضر الحالية والسابقة.

لقد تمنيت في كثير من الأحيان وجود طريقة لتصدير إعدادات قائمة الشريط الجانبي المخصصة الخاصة بي حتى يتمكن الآخرون في فريقي من استيرادها - فهذا تكوين متفوق بكثير!

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

ومستدام! سيتمكن جميع المسؤولين من تعديل ملفات التكوين، لذلك لا يعتمدون عليّ فقط. شكرًا @Lilly و @Moin!

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

مرحباً @Lilly و @Moin،

شكراً لكما على بناء هذا المكون.

كنت أستخدم Group sidebar menu sections - deprecated على موقعي المستضاف ذاتياً، وفي آخر تحديث لي، تم تحذيري من أن مكون الثيم القديم قد تم إهماله وتثبيت هذا المكون بدلاً منه.

لقد قمت بتثبيت المكون وأنشأت قائمة مجموعتي المخصصة، ولكني لا أرى كيف يمكنني نقل قائمة المجموعة. (يجب أن أكون أتجاهل شيئاً واضحاً. :see_no_evil_monkey:) في لقطات الشاشة الخاصة بكما، تظهر قائمة القطط (Cat Menu) و قائمة الكلاب (Dog Menu) في شريط التنقل الجانبي فوق قسم المواضيع (Topics)، لكن قائمة مجموعتي المخصصة تظهر في أسفل شريط التنقل الجانبي الخاص بي. كيف يمكنني نقلها إلى الأعلى فوق المواضيع (Topics)؟

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

ليس واضحًا. استخدمت ليلي Discourse Sidebar Menu Reorder لوضع cat-menu في الأعلى

إعجابَين (2)

شكراً جزيلاً! كان إعداده سهلاً للغاية.

إعجابَين (2)