أشرطة جانبية لقائمة الموضوعات

:information_source: كان يُعرف سابقًا باسم “Discourse Category Sidebars” — تم تحديث اسم هذا المكوّن للثيم إلى Topic List Sidebars نظرًا لدعمه لكل من الفئات والوسوم.

:discourse2: الملخص يأخذ Topic List Sidebars موضوعًا معينًا ويضعه كشريط جانبي لقائمة مواضيع فئة أو وسم.
:eyeglasses: معاينة معاينة على منشئ ثيمات Discourse
:hammer_and_wrench: رابط المستودع https://github.com/discourse/discourse-topic-list-sidebars
:open_book: جديد على ثيمات Discourse؟ دليل المبتدئين لاستخدام ثيمات Discourse

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

الميزات

يأخذ هذا المكوّن للثيم موضوعًا معينًا ويضعه كشريط جانبي لقائمة مواضيع فئة أو وسم. تظهر هذه الأشرطة الجانبية فقط عندما يكون عرض المتصفح 767 بكسل أو أكثر (معظم الأجهزة اللوحية والشاشات).

ماذا يمكنني أن أفعل باستخدام هذا المكوّن للثيم؟

  • اختر موضوعًا وعرض محتواه كشريط جانبي لفئة أو وسم.

  • اضبط شريطًا جانبيًا ليظهر في صفحات /latest، /new، /unread، و /top باستخدام all كاسم الفئة في إعداداتك.

  • اختر ظهور الأشرطة الجانبية على يسار أو يمين قائمة المواضيع.

  • بشكل افتراضي، سيظهر الشريط الجانبي للفئة أيضًا لجميع فئاتها الفرعية ما لم يكن للفئة الفرعية شريطها الجانبي الخاص المحدد (يمكنك تعطيل هذا بإلغاء تحديد إعداد inherit parent sidebar).

كيفية التكوين؟

اختر فئاتك ووسومك، وأضف معرف الموضوع (على سبيل المثال example.com/t/example-topic/57) الذي ترغب في استخدامه لتعبئة محتوى الشريط الجانبي.

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

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

الإعدادات

الاسم الوصف
sidebars إضافة وإزالة الأشرطة الجانبية
sidebar side اختر من اليسار أو اليمين
inherit parent sidebar إذا تم التحديد، ستورث الفئات الفرعية الشريط الجانبي لفئتها الأم (ما لم يكن للفئة الفرعية شريط جانبي معين).

عند إلغاء التحديد، ستعرض الفئات الفرعية شريطًا جانبيًا فقط إذا تم تحديده.
stick on scroll عند التحديد، يكون للشريط الجانبي موضع ثابت عند التمرير

ملاحظات للمطورين

كل شريط جانبي لفئة محاط بفئة تحتوي على الرمز التعريفي للفئة، لذا بالنسبة لفئة الموظفين سيكون ذلك .category-sidebar-staff. يمكنك استخدام هذه الفئات لتنسيق الأشرطة الجانبية الفردية.

يحتوي أيضًا وسم الجسم في الصفحات التي تحتوي على أشرطة جانبية على فئة مضافة بحيث يمكنك استخدام body.custom-sidebar لتطبيق الأنماط على جميع الصفحات التي تحتوي على شريط جانبي.

الاعتمادات

:heart: شكر خاص لـ @xrav3nz على وضع الأساس لجعل هذا المكوّن ممكنًا!


:discourse2: مُستضاف من قبلنا؟ متاحة لمكونات الثيمات للاستخدام على خططنا القياسية والأعمال والمؤسسية.

59 إعجابًا

Trying to figure out how to make this work with tags as well. (we use tags heavily rather than having tons of categories.)

It looks like it may be about replacing controller:navigation/category with whatever the equivalent for tags is but not sure.

إعجابَين (2)

لقد ألقيت نظرة سريعة للتو، ومن الممكن القيام بذلك للوسوم…

من المرجح أن أعمل على هذا أكثر غدًا وأفصله إلى مستودع خاص به.

نعم، هذا هو جوهر الأمر — يبدو أن هذا يعمل للوسوم:

const controller = container.lookup("controller:tags-show");
const tag = controller.get("tag");

تحديث: لدي مكون موضوع متاح، Discourse Tag Sidebars

10 إعجابات

Since I am using the header submenu plugin, A part of the text is covered by my header bar. It would be great if it was possible to add extra margin/offset or whatever it’s called for the case when additional elements before the header are covering the sidebar’s content.

Also: is there any way to keep the category drop down menu above the sticky sidebar’s content? that would make it easy for users to jump between categories quickly.

altogether I think the category sidebar is a great plugin and has huge potential to add useful information to the forum structure!

مقطع إضافي رائع آخر يا كريس، شكرًا لك!

لديّ بعض الأسئلة والاقتراحات التي أتمنى أن تتمكن من مساعدتي بها…

1 - هل من الممكن جعل هذا بحيث عندما يتصفح المستخدم المنتدى، عند الانتقال من صفحة إلى أخرى، يتحقق الشريط الجانبي دائمًا من أحدث إصدار من المنشور الذي يحتويه؟ في الوقت الحالي، أعتقد أن محتوى الشريط الجانبي يتحدّث فقط عند تحديث الصفحة؟ للأسف، المحتوى الذي يتغير نادرًا ما يبدأ في الظهور قديمًا للمستخدمين (خاصة المستخدمين النشطين)، لذا أود تحديث الموضوع المرتبط بالشريط الجانبي بشكل متكرر إذا أمكن. (وبالمثل، إذا تم تغيير معرف الموضوع في خيارات تلك الصفحة، فسيتم التقاطه في عرض الصفحة التالي). أنا مستعد تمامًا للعبء الإضافي لكل صفحة/عرض، لكن إذا كنت قلقًا من أن الآخرين قد لا يكونون كذلك، فيمكنك إضافة خيار “تخزين محتوى المنشور” ليجعل الأمر يعمل كما هو عليه الآن.

2 - هل من الممكن ربط/التقاط محتوى من أكثر من موضوع واحد لكل شريط جانبي من فضلك؟ على سبيل المثال، في صفحة “الأحدث” قد ترغب في محتوى من الموضوعين 33 و55 (وبهذا الترتيب). سيكون هذا رائعًا للسماح بمحتوى مختلف لكل صفحة مع تضمين معلومات/روابط مشتركة قد ترغب في ظهورها في أسفل كل شريط جانبي.

3 - هل من الممكن توسيع نطاق هذا الملحق ليُستخدم في جميع أنحاء الموقع من فضلك؟ في الوقت الحالي، أعتقد أنه يمكن استخدامه فقط على صفحات معينة؟ مثاليًا، أود استخدامه في جميع أنحاء المنتدى في جميع الأقسام/الصفحات الرئيسية. (ربما يمكن استخدام ملحق الشريط الجانبي للعلامات الخاص بك بالاشتراك مع هذا للتحكم الدقيق - مثلًا للعلامات الفردية و/أو المواضيع - أعتقد أن الجمع بينهما قد يصبح حزمة شريط جانبي قوية جدًا!!)

4 - هل من الممكن إضافة خيار لعرض عرض الشريط الجانبي بالإضافة إلى نقطة قطع/إخفاء قابلة للتكوين من فضلك؟ هذا ليس بالأمر الكبير حيث يمكن القيام به عبر تغييرات CSS، لكن أعتقد أنه سيكون من الجيد وجوده في الخيارات.

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

أعتقد أن مع كل ما سبق، سيكون هذا الملحق مرشحًا جيدًا ليتم تضمينه في النواة أو كملحق رسمي لـ DC - في رأيي يمكن أن يساعد الناس في ترك بصمة فردية على منتدياتهم، وأنا متأكد من أن الناس سيستخدمونها بطرق ممتعة ومثيرة للاهتمام! :smiley:

مرحبًا،

مكون رائع. هل من الممكن وجود شريط جانبي مثل هذا لكل موضوع ضمن فئة محددة؟

شكرًا لك.

ما هي الصيغة الصحيحة لعرض فئة فرعية؟ الأشياء التي جربتها حتى الآن:

category/subcategory,123
subcategory,123
category-subcategory,123

لا يبدو أن أيًا منها يعمل. ومع ذلك، تُعرض الفئات الرئيسية.

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

[اقتباس=“Ralf_Stockmann، المشاركة: 42، الموضوع: 107561”]
ما هي صيغة عنونة فئة فرعية؟
[/اقتباس]

هم، أي شخص، من فضلك؟ لا ينبغي أن يكون من الصعب جدًا تقديم إجابة…

يبدو أن هناك مشكلة عائدة، ولم تعمل الفئات الفرعية في بعض الحالات. يجب أن تكون الصيغة نفسها مثل الفئات: subcategory, 123

لقد أعيدت هيكلة القالب، لذا إذا قمت بتحديثه، فستعمل الفئات الفرعية كما هو متوقع!

6 إعجابات

هذا ما كان مطلوبًا: رائع!
شكرًا جزيلاً لك، وفي الوقت المناسب لافتتاحنا الكبير.

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

ملحق رائع!

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

هل يمكن لأي شخص توجيهي إلى طريقة للحصول على معلمات المجموعة (لإعلام المكون بأنك داخل مجموعة) حتى أتمكن من محاولة إنشاء طلب سحب بنفسي؟

@hyphalos لقد قمت بإنشاء Groups Widget يمكن إضافته إلى الأشرطة الجانبية لـ Layouts Plugin.

ربما سيساعدك الكود الذي كان لدي لهذا الغرض في كتابة طلب السحب الخاص بك:

بدلاً من ذلك، يمكنك أيضًا استخدام المكون الإضافي Layouts والأداة نفسها.

إعجابَين (2)

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

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

لقد جربت بالفعل لافتات الفئات، لكنها تقتصر على الفقرة الأولى، لذا فهذا ليس خيارًا.

مع خالص التقدير،
رالف
(مكتبة ولاية برلين)

ماذا عن هذا الـ TC؟

أعتقد أنك ستظل عالقًا في الفقرة الأولى. ولكن يمكن تغيير ذلك.

مرحباً كريس، هذا لطيف جدًا.

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

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

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

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

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

حسناً، شكراً!

أهلاً بالجميع! لقد قمت للتو بدمج تحديث كبير لهذا المكون الذي يقوم ببعض الأشياء: FEATURE: include tag sidebars, migrate to objects setting by awesomerobot · Pull Request #22 · discourse/discourse-topic-list-sidebars · GitHub

  • ينقل إعداد نمط القائمة إلى إعداد كائن. هذا يعني:
    • يمكن تكوين كل شريط جانبي لفئات متعددة في وقت واحد
    • يمكنك الآن تحديد فئات من القائمة المنسدلة بدلاً من إضافة الأسماء المختصرة يدويًا
    • يتضمن خيار علامة أيضًا! هذا يعني أنك لن تحتاج بعد الآن إلى مكون منفصل (Discourse Tag Sidebars)

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

على سبيل المثال، سيتم ترحيل site-feedback بشكل صحيح إلى Site Feedback ولكن لا توجد طريقة لترحيل الأسماء المختصرة التي لا تتوافق مع الأسماء (على سبيل المثال، الاسم المختصر الخاص بك لـ Site Feedback هو hamburgers بدلاً من site-feedback).

من المحتمل أن أغير اسم مكون السمة هذا وألغي دعم أشرطة التمرير الخاصة بالعلامات لتعكس الوضع الجديد.

5 إعجابات

هل سينتقل إعداد العلامات تلقائيًا؟

مع الإعداد الجديد، هل يمكن أن تكون هناك أشرطة جانبية مختلفة لنفس العلامة في فئات مختلفة؟ كيف يتم حل التعارضات؟

إعجابَين (2)