فرز المواضيع المنشأة

:information_source: الملخص يضيف عمودًا قابلًا للفرز لتاريخ الإنشاء إلى قائمة المواضيع
:eyeglasses: المعاينة https://discourse.theme-creator.io/theme/Alteras/created-topic-sort
:hammer_and_wrench: المستودع GitHub - Alteras1/discourse-created-topic-sort: Discourse theme component adds topic sorting by created date · GitHub
:question: دليل التثبيت كيفية تثبيت سمة أو مكون سمة
:open_book: جديد في سمات Discourse؟ دليل المبتدئين لاستخدام سمات Discourse

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

يضيف هذا عمودًا قابلًا للفرز لتاريخ الإنشاء إلى قائمة المواضيع. كما يضيف علامة تبويب اختيارية “تم الإنشاء” إلى شريط التنقل.

في عرض سطح المكتب، يُضاف عمود كامل. أما في الجوال، يُضاف تاريخ الإنشاء فقط مدمجًا مع تاريخ النشاط عند اختيار فرز “تم الإنشاء” (انظر لقطات الشاشة أدناه).

:information_source: قبل استخدام هذا المكون، قد يكون من الجيد تقييم حاجة مجتمعك لمعرفة تاريخ الإنشاء. فهناك بالفعل طريقة مدمجة لوضع علامة تلقائية على المواضيع الجديدة ضمن فترة زمنية معينة (يمكن للمستخدمين تخصيصها في الإعدادات > التتبع > المواضيع).

الإعدادات

تفعيل عنصر شريط التنقل “الفرز حسب تاريخ الإنشاء”

يضيف عنصرًا في شريط التنقل باسم “الفرز حسب تاريخ الإنشاء” إلى قائمة التنقل. الافتراضي: true

لقطات الشاشة

سطح المكتب

الجوال

تفعيل العمود في فلتر تاريخ الإنشاء فقط

يمنع عرض عمود تاريخ الإنشاء خارج فلتر تاريخ الإنشاء. يتطلب أن يكون “تفعيل عنصر شريط التنقل ‘الفرز حسب تاريخ الإنشاء’” مضبوطًا على true. الافتراضي: false

تفعيل عنصر شريط التنقل في الصفحة الرئيسية

إضافة عنصر شريط التنقل “الفرز حسب تاريخ الإنشاء” في الصفحة الرئيسية. الافتراضي: true

تفعيل العمود في الصفحة الرئيسية

إضافة عمود “تم الإنشاء” في الصفحة الرئيسية. الافتراضي: true

الفئات لعرض عنصر شريط التنقل

قائمة الفئات لعرضها في عنصر شريط التنقل "الفرز حسب تاريخ الإنشاء. اتركها فارغة لعرضها في جميع الفئات. الافتراضي: empty`

الفئات لعرض عمود “تم الإنشاء”

قائمة الفئات لعرض عمود “تم الإنشاء”. اتركها فارغة لعرضها في جميع الفئات. الافتراضي: empty

الوسوم لعرض عنصر شريط التنقل

قائمة الوسوم لعرض عنصر شريط التنقل “الفرز حسب تاريخ الإنشاء”. اتركها فارغة لعرضها في جميع الوسوم. الافتراضي: empty

الوسوم لعرض عمود “تم الإنشاء”

قائمة الوسوم لعرض عمود “تم الإنشاء”. اتركها فارغة لعرضها في جميع الوسوم. الافتراضي: empty

عنصر شريط التنقل قبل

تحديد موقع عنصر شريط التنقل في القائمة. الافتراضي: top.

لقطات الشاشة

الفرز


عرض الجوال

مع الفئات والوسوم

التوافق والملاحظات

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

التوافق مع Topic List Thumbnails محدود. في نمط القائمة، سيعمل بشكل طبيعي. في نمط المدونة، يُسحب تاريخ الإنشاء إلى الزاوية اليمنى السفلية. في نمط الشبكة ونمط البناء، يكون تاريخ الإنشاء مرئيًا فقط عند اختيار فلتر “تم الإنشاء”، وسيحل محل تاريخ النشاط. في النمط المصغر، يكون تاريخ الإنشاء مخفيًا.

17 إعجابًا

رائع، إضافة أخرى مثالية تغير المنتدى! سيكون من الرائع لو تمكنت من التكامل مع إضافة Discourse Nav Item Icon / Emoji.

3 إعجابات

أعتقد أنه يجب أن يعمل معها. :slight_smile:
فقط أضفه على سبيل المثال:
emoji:created_date:twitter:spiral_calendar:filter

4 إعجابات

يمكن التأكيد على إضافة الإعداد كما فعل دون، فهو يعمل!


5 إعجابات

لطيف جدا! للأسف لا يعمل بشكل جيد مع Topic Thumbnails TC، يضيف وقتاً إضافياً لسبب ما:

لاحظ الـ 7 ساعات الإضافية في أسفل المنتصف.

يبدو أنه يمكنني فقط إخفاء .topic-list .topic-list-data:last-of-type ولكن اعتقدت أنني سأعلمك :grin:

تعديل: وجدت شيئًا غريبًا آخر، عندما أنقر على الأحدث، فإنه يبرز المنشأ، وعندما أنقر على المنشأ فإنه يبرز الأحدث :zany_face:

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

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

يبدو تمييز الأحدث والمنشأ غريبًا حقًا. يجب تمييز المنشأ فقط عندما يحتوي عنوان URL على /latest?order=created فيه… هممم…

لقد قمت بتحديث بعض المكونات لجعلها أجمل (أو على الأقل مطابقة) لمكون معاينات الموضوع.

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

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

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

على الإطلاق! لقد أصدرت للتو تحديثًا يضيف أربعة إعدادات جديدة للمساعدة في التحكم في مكان عرض عنصر شريط التنقل والعمود.\n\n- تمكين عنصر شريط التنقل في الصفحة الرئيسية: إضافة عنصر شريط التنقل "الفرز حسب تاريخ الإنشاء" في الصفحة الرئيسية.\n- تمكين العمود في الصفحة الرئيسية: إضافة العمود "الإنشاء" في الصفحة الرئيسية.\n- فئات لعرض عنصر شريط التنقل: قائمة بالفئات لعرضها في عنصر شريط التنقل "الفرز حسب تاريخ الإنشاء". اتركها فارغة لعرضها في جميع الفئات.\n- فئات لعرض عمود الإنشاء: قائمة بالفئات لعرض العمود "الإنشاء". اتركها فارغة لعرضها في جميع الفئات.\n\nhttps://github.com/Alteras1/discourse-created-topic-sort/pull/7\n\nومع ذلك، لاحظ أن القيود المفروضة على عرض العمود تعمل فقط في المواقع التي تستخدم تغييرات قائمة الموضوعات الجديدة.

إعجابَين (2)

شكرا جزيلا! :star_struck: هذا رائع!

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

ثم يمكنني استبدال “الأحدث” القياسية فعليًا عن طريق إخفاء تلك باستخدام CSS.

يمكن ضبط الصفحة الرئيسية الافتراضية باستخدام بعض جافا سكريبت:

import { setDefaultHomepage } from "discourse/lib/utilities";
setDefaultHomepage("/latest?order=created");

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

إعجابَين (2)

شكرًا! هذا يجب أن يعمل ولكنه يضيف %3F_discourse_homepage_rewrite إلى عنوان URL مما يتداخل مع الفرز. :confounded_face:

إعجابَين (2)

تمكنت من تجاوز ذلك عن طريق تشغيل setDefaultHomepage("latest?order=created&");
ولكن الآن المشكلة هي، على الرغم من أن جميع المؤشرات تقول ذلك، فإن الفرز الفعلي لا يتم تطبيقه.

لذلك جربت نفس عنوان URL باستخدام Custom Homepage for Groups وهذا نجح :tada: لست متأكدًا من سبب عمل إعادة توجيه هذا المكون بشكل مختلف نظرًا لأنني متأكد من أنه يستخدم نفس الطريقة.

إعجابَين (2)

لقد اكتشفت الأمر، كان بحاجة إلى مسح PreloadStore

لذلك يمكن للمرء تعديل السمة الافتراضية الخاصة بك أو مكون جديد لإضافة هذا إلى JS:

import { apiInitializer } from "discourse/lib/api";
import { setDefaultHomepage } from "discourse/lib/utilities";
import PreloadStore from "discourse/lib/preload-store";

export default apiInitializer((api) => {
  setDefaultHomepage("latest?order=created&");
  PreloadStore.remove("topic_list");
});

وهذا CSS لإزالة علامة التبويب “الأحدث”:

li.nav-item_latest {
    display: none;
}

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

3 إعجابات

لقد انتهيت من إنشاء هذه الإضافة (plugin): Created as Default Sort Order
لذلك، تم فرز صفحتي الرئيسية بشكل نظيف حسب تاريخ الإنشاء. ما زلت أستخدم هذا المكون لإضافة العمود.

4 إعجابات

شكراً على مكون السمة الرائع هذا!

لقد قمت بـ PR صغير وبسيط للغاية يسمح بتكوين مكان ظهور عنصر شريط التنقل.

إعجابَين (2)

شكراً على طلب السحب (PR)! لقد قمت بدمجه وتحديث وصف الإعدادات في المنشور الأصلي.

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

هل من الممكن أن يعمل هذا في عرض الوسم؟ حاليًا، عند عرض وسم، تختفي خيار القائمة “إنشاء”. شكرًا لك!

تم التحديث! تمت إضافة الإعدادات tags_to_display_nav_bar_item و tags_to_display_created_column.

3 إعجابات