التحكم في رؤية إشعار المنشور

:information_source: ملخص تخصيص رؤية وأسلوب إشعارات المنشورات حسب النوع والعمر
:hammer_and_wrench: المستودع GitHub - moin-Jana/post-notice-visibility-control: Customize visibility and style of post notices by type and age
:question: دليل التثبيت كيفية تثبيت سمة أو مكون سمة
:open_book: جديد في سمات Discourse؟ دليل المبتدئين لاستخدام سمات Discourse

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

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

تُظهر لقطات الشاشة أمثلة لكيفية ظهور الأنواع المختلفة على المنشورات الجديدة (اليسار) والمنشورات القديمة (اليمين):

مثال على التكوين 1
"custom_new": "highlighted"
"custom_old": "highlighted"
"custom_highlight_color": "var(--danger-low-mid)"

"new_user_new": "highlighted"
"new_user_old": "visible"
"new_user_highlight_color": "var(--success-low)"

"returning_user_new": "highlighted"
"returning_user_old": "hidden"
"returning_user_highlight_color": "var(--primary-200)"

مثال على التكوين 2
"custom_new": "highlighted"
"custom_old": "visible"
"custom_highlight_color": "var(--gold)"

"new_user_new": "visible"
"new_user_old": "hidden"
"new_user_highlight_color": "var(--tertiary-low)"

"returning_user_new": "visible"
"returning_user_old": "hidden"
"returning_user_highlight_color": "var(--tertiary-low)"

لكل نوع من الإشعارات وعمرها، يمكنك اختيار ما إذا كان يجب أن يكون الإشعار مميزًا، أو مرئيًا (بدون تمييز)، أو مخفيًا. إذا اخترت “مميزًا”، يمكنك اختياريًا تحديد لون خلفية مخصص.

أوصي باستخدام متغير لون مثل var(--quaternary-low). تشير هذه المتغيرات إلى الألوان من لوحة الألوان النشطة، لذا فهي تتكيف تلقائيًا عندما ينتقل المستخدم بين لوحات ألوان مختلفة (على سبيل المثال، الوضع الفاتح والوضع المظلم). هذا يجعلها خيارًا أكثر مرونة من الألوان الثابتة. بينما تعرض معظم لوحات الألوان عددًا قليلاً من الألوان الأساسية فقط، فإن Discourse ينشئ تدرجات لهذه الألوان التي يمكنك استخدامها أيضًا. يمكنك استكشاف العديد من متغيرات الألوان المتاحة باستخدام دليل الأنماط، والذي يمكنك تمكينه عبر إعداد الموقع styleguide enabled. بدلاً من ذلك، يمكنك فحص موقعك في المتصفح - افتح أدوات المطور، وانتقل إلى علامة التبويب Styles، وقم بالتمرير إلى الأسفل لرؤية جميع متغيرات الألوان المتاحة.

يمكنك أيضًا استخدام قيم سداسية عشرية مثل #EE8888، أو قيم RGB مثل rgb(255, 200, 200)، أو ألوان مسماة مثل red.

إذا لم يتم توفير لون، فسيعود المكون إلى var(--tertiary-low). تعكس الإعدادات الافتراضية للمكون سلوك Discourse القياسي - لذا فإن مجرد تمكينه لن يغير أي شيء حتى تقوم بتكوينه.

يتم تحديد عدد الأيام التي يعتبر بعدها إشعار المنشور “قديمًا” بواسطة إعداد الموقع old post notice days. ينطبق هذا على جميع أنواع الإشعارات الثلاثة.
:warning: هام: يعتمد العمر على وقت إنشاء المنشور - وليس على وقت إضافة الإشعار.
يمكنك تعيين القيمة مؤقتًا إلى 0 لمعاينة سهلة لكيفية ظهور الإشعارات في حالتها “القديمة”.

12 إعجابًا

لم تعد إشعارات المشاركات القديمة تُعرض في أحدث إصدار من Discourse، مما يعني أنه لا يمكن تنسيقها عبر CSS. ونتيجة لذلك، لم تعد جميع إعدادات _old لها أي تأثير.

مع آخر تحديثات Discourse، تمت إزالة الفئة old التي كان يستخدمها المكون لتطبيق أنماط مختلفة على الإشعارات الجديدة والقديمة. سيتم الآن إزالة إشعارات المشاركات للمستخدمين الجدد والعائدين تلقائيًا بعد إعداد أيام إشعارات المشاركات القديمة، بينما تظل الإشعارات الرسمية مرئية بشكل دائم ومميزة.

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

.post-notice.custom {
    background-color: var(--danger-low-mid);
}
.post-notice.new-user {
    background-color: var(--success-low);
}
.post-notice.returning-user {
    background-color: var(--primary-200);
}

إذا كنت ترغب في إزالة تمييز الخلفية لنوع معين من الإشعارات، فما عليك سوى استخدام background-color: unset;

إعجابَين (2)