هل من الممكن تغيير أيقونة إشعارات الموظفين؟

هل من الممكن تغيير الأيقونة المستخدمة في إشعارات الموظفين، إما عبر CSS أو عبر إعداد لم أجد بعد؟ ونفضل استبدالها بصورة مخصصة بدلاً من أيقونة FontAwesome.

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

لا نمتلك إعدادًا لذلك، وأعتقد أن القيام بذلك باستخدام CSS فقط أمر صعب، لكن يمكنك إنشاء مكون سمة لاستبداله.

في CSS، ستقوم بإخفاء الأيقونة القديمة:

.post-notice {
  .d-icon-user-shield {
    display: none;
  }
}

في JavaScript (تضع هذا في <head> لمكون السمة)، ستقوم بتزيين الإشعار وإضافة الأيقونة الجديدة:

<script type="text/discourse-plugin" version="0.8">
  const { iconNode } = require("discourse-common/lib/icon-library");
  api.decorateWidget('post-notice:before', helper => {
    return iconNode('heart');
  });
</script>

… أو إذا كنت ترغب في الاستبدال بصورة…:

<script type="text/discourse-plugin" version="0.8">
  api.decorateWidget('post-notice:before', helper => {
    return helper.h('img', {
      src: 'https://www.discourse.org/a/img/home-spot-1.png',
      style: 'margin-right: 0.65em',
      height: 30,
      width: 30
    });
  });
</script>

مع السمات ومكونات السمات، لا حدود للإمكانيات. إذا كنت ترغب في معرفة المزيد، فلدينا مورد لذلك:

12 إعجابًا

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

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

يحتاج هذا الآن إلى وضعه في علامة تبويب جافاسكريبت لمكون سمة (أو سمة) بدلاً من ذلك:

import { apiInitializer } from "discourse/lib/api";
import { iconNode } from "discourse-common/lib/icon-library";

export default apiInitializer("0.11.1", (api) => {
  api.decorateWidget("post-notice:before", () => {
    return iconNode("heart");
  });
});

لم أنظر في استخدام صورة بدلاً من ذلك، آسف.

3 إعجابات

بعد إضافته إلى السمة الخاصة بي، رأيت تحذيرًا بسبب Upcoming post stream changes - How to prepare themes and plugins. لذلك أنا قلق من أن تحديثًا آخر سيكون مطلوبًا قريبًا.

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

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

هذا غير مرضٍ على الإطلاق!!
في عجلة من أمري لنشر ذلك، فاتني أنني لم أزل api.decorateWidget. لا بد أنني تجاهلت الخطأ على موقعي دون أن أدرك ذلك.
أنا متأكد من أن CSS يمكن استهدافها بشكل أفضل، لكنني اكتشفت للتو Quote Callouts - أعتقد أن هذا سيفي بحالتي استخدامي بشكل أفضل على أي حال.

3 إعجابات