| الملخص | إنشاء قوائم شريط جانبي مخصصة لمجموعات محددة | |
| المعاينة | انضم إلى مجموعة منشئ السمات ثم قم بالمعاينة هنا | |
| المستودع | https://github.com/Lillinator/discourse-group-sidebar-menus | |
| دليل التثبيت | كيفية تثبيت سمة أو مكون سمة |
تثبيت مكون السمة هذا
نظرة عامة
يمنح مكون سمة Discourse هذا مسؤولي المنتدى القدرة على إنشاء قوائم شريط جانبي مخصصة يمكن الوصول إليها فقط من قبل أعضاء مجموعات محددة.
الميزات الرئيسية:
- ظهور القائمة بناءً على المجموعة: تُعرض أقسام القائمة فقط في الشريط الجانبي للمستخدمين المصرح لهم.
- التكوين القائم على الكائن: واجهة إعدادات سهلة الاستخدام لإنشاء القوائم.
- أقسام متعددة: إنشاء عدد غير محدود من أقسام القائمة لمجموعات مختلفة (ضمن حدود معقولة).
- رابط تعديل سريع للمسؤول: يربط أيقونة القلم في رؤوس القوائم المسؤولين مباشرةً بإعدادات المكون.
بعض حالات الاستخدام
- موارد وروابط سريعة مخصصة للموظفين فقط.
- اختصارات لمدراء الفئات.
- بوابات مخصصة للمجموعات (فريق المشروع، مجموعات الدراسة، نوادي الكتب، الأعضاء VIP).
- روابط لموارد مواقع الويب التابعة للوالدين أو الشركاء.
الإعدادات
أقسام القائمة (menu_sections)
يفتح محرر إعدادات الكائن لتكوين أقسام قائمة المجموعات المخصصة.
خصائص القسم
| الخاصية | الوصف |
|---|---|
| عنوان القائمة | العنوان المعروض كرأس قسم الشريط الجانبي |
| المجموعات المسموح بها | المجموعات المسموح لها بعرض قسم القائمة هذا (الحد الأقصى: 20 مجموعة لكل قسم) |
| روابط القائمة | مجموعة الروابط المراد عرضها في هذا القسم (الحد الأقصى: 20 رابطًا لكل قسم) |
خصائص الرابط
| الخاصية | الوصف |
|---|---|
| الأيقونة | اسم أيقونة FontAwesome (مثل circle-info، star، user-group). قد تحتاج إلى إضافتها إلى Admin > جميع إعدادات الموقع > مجموعة أيقونات svg |
| النص | تسمية العرض للرابط |
| عنوان URL | وجهة الرابط - يدعم كلًا من المسارات النسبية (/faq، /my/preferences) وعناوين URL المطلقة (https://example.com) |
التثبيت والتكوين
- قم بتثبيت مكون السمة وفقًا لـ Installing a theme or theme component.
- انتقل إلى
محرر إعدادات الكائنات. - انقر على زر
+ new_menu_sectionلإعداد أول قسم قائمة مخصص. - امنح القائمة الجديدة عنوانًا في حقل
عنوان القائمة، ثم اختر المجموعات التي تريد منحها حق الوصول إليها. - انقر على زر
+ new_menu_sectionلإضافة قسم آخر، أو احفظ التغييرات.
لقطات شاشة لإعداد المسؤول مع مثال على الإعداد
تثبيت جديد - انتقل إلى محرر إعدادات الكائنات.
سيناريو مثال مع قائمتين مخصصتين و3 مستخدمين، أحدهم مسؤول:
@Catraتحب القطط وهي عضو في مجموعةpink، والتي سيكون لها حق الوصول إلىقائمة القطط@HelloKittyيحب الكلاب وهو عضو في مجموعةpurple، والتي سيكون لها حق الوصول إلىقائمة الكلاب@Lillyعضو في مجموعةpurpleلأنها تملك كلبًا والكلاب أفضل. ومع ذلك، فهي أيضًا إدارية للمنتدى، وسيكون للمسؤولين حق الوصول إلىقائمة القططلأن القطط تحتاج إلى إشراف أكثر![]()
إنشاء قائمة مخصصة جديدة - في مثالنا، قم بإنشاء قائمة القطط وأضف المجموعات المسموح لها بالوصول إليها - pink و admins. ثم انقر على زر + menu_link لإعداد الروابط للقائمة الجديدة.
أضف روابط القائمة - 1. اسم أيقونة Fontawesome، 2. النص المراد عرضه للرابط، و 3. عنوان URL، نسبي أو مطلق. انقر على زر + menu_link لإضافة رابط آخر إلى هذه القائمة.
إنشاء قسم قائمة مخصص آخر يسمى قائمة الكلاب، امنح المجموعة purple فقط حق الوصول وقم بتكوين الروابط:
لقطات شاشة للوصول إلى قائمة الشريط الجانبي الناتجة
المستخدم @Catra لديه قائمة القطط! ![]()
المستخدم @HelloKitty لديه قائمة الكلاب! ![]()
المستخدم المسؤول @Lilly لديه القوائمتين ويمكنه تحريرهما! ![]()
مثال على التكوين
عنوان القائمة: "أشياء القطط"
المجموعات المسموح بها: team-cat
الروابط:
- الأيقونة: link
النص: مقاطع فيديو للقطط وصور
عنوان URL: /t/cat-videos-and-photos/123
- الأيقونة: magnifying-glass
النص: ويكي القطط
عنوان URL: https://en.wikipedia.org/wiki/Cat
ملاحظات مهمة
وصول المسؤول
يجب على المسؤولين إضافة أنفسهم إلى المجموعات لرؤية القوائم المخصصة لتلك المجموعات. لا يمنح وضع المسؤول وحده الوصول إلى جميع القوائم المخصصة. هذا مقصود! أيضًا، سيظهر المسؤولون الذين ينتمون إلى مجموعات مسموح بها في القائمة أيقونة قلم في رأس القسم تربطهم بإعدادات المكون.
تكوين المجموعة
- مجموعة
everyoneغير مدعومة - استخدم واجهة مستخدم تذييل الشريط الجانبي الأصلية لإنشاء قوائم مخصصة عالمية لجميع المستخدمين، بما في ذلك الزوار المجهولين. - الحد الأقصى لعدد 20 مجموعة لكل قسم قائمة. إذا كنت بحاجة إلى أكثر من ذلك، قم بإنشاء أقسام مكررة بتعيينات مجموعات مختلفة.
- سيظهر المستخدمون المنتمون إلى مجموعات متعددة جميع أقسام القائمة التي لديهم حق الوصول إليها.
الاختبار والتنظيم
استخدم حسابات الاختبار للتحقق من صحة الوصول لمجموعات مختلفة. احتفظ بسجل لإعدادات قائمتك لتجنب الارتباك مع زيادة التعقيد؛ يُنصح بمصفوفة وصول أو توثيق مشابه للمنتديات الكبيرة ذات المجموعات العديدة.
اعتبارات الأمان
يوفر هذا المكون تحكمًا في الوصول على مستوى واجهة المستخدم فقط. فهو يتحكم في ظهور القائمة، وليس الوصول إلى الموارد - يتحكم هذا المكون فقط في ما يتم عرضه في الشريط الجانبي، وليس من يمكنه الوصول إلى الموارد الفعلية.
اعتمد دائمًا على نظام الأذونات المدمج في Discourse لتأمين الموارد الفعلية:
- قم بتكوين أذونات الفئات بشكل صحيح.
- اضبط قيود ظهور الموضوعات.
- استخدم ضوابط الوصول القائمة على المجموعة للمحتوى.
- تأكد من أن الموارد الخاصة تتطلب مصادقة.
أفضل الممارسات للمسؤولين:
قم بتكوين أذونات أمان الفئة المرتبطة وأعضاء المجموعة بشكل منفصل - على سبيل المثال: يجب أن يكون للرابط في القائمة إلى فئة خاصة أذونات تلك الفئة مهيأة بشكل صحيح. المسؤولون مسؤولون عن التأكد من أن الروابط إلى الموارد الخارجية معتمدة بشكل مناسب للمجموعات المحددة.
كان هذا مشروعًا تعاونيًا مع @Moin - كانت مساهمتها وإلهامها وملاحظاتها لا تقدر بثمن.
اطّلع على أشياء Discourse الأخرى الخاصة بي







