تفاعلات مخصصة لمنصة Discourse

مرحبًا،

لقد قمت ببعض التعديلات على CSS لـ إضافة ردود Discourse. لذا أصبحت تشبه أزرار ردود فيسبوك.

هذه لستة أزرار ردود بما في ذلك الافتراضي وهو الموجود على موقعي: :heart:.

عامة / SCSS
ضع هذا الكود في قسم CSS العام.
ملاحظة هامة: يمكنك تعديل الرموز التعبيرية فوق التسمية عن طريق تعديل الأسطر التي تحتوي على content: 'Love it!'، content: 'Beautiful'، إلخ…: بالطبع يمكنك استخدام أي ردود تريد. إنها مجرد تسمية فوق الردود.

.discourse-reactions-picker {
  .discourse-reactions-picker-container {
    width: 330px;
    height: 50px;
    max-width: calc(100vw - 2em);
    border: 1px solid var(--primary-low) !important;
    border-radius: 50px;
    .pickable-reaction {
      max-width: 100% !important;
      margin: 0 !important;
      padding: 0 !important;
    }
  }
  .pickable-reaction {
    background: transparent !important;
    .emoji {
      height: 40px;
      width: 40px;
      padding: 0 !important;
      transform: scale(0.9);
    }
    &.is-used {
      transform: scale(1.3);
      transform-origin: bottom;
      border: none !important;
    }
    &:hover {
      transform-origin: bottom;
    }
    &:hover:after {
      position: absolute;
      font-size: 10px;
      top: -15px;
      background: var(--secondary-low);
      color: var(--secondary);
      padding: 2px 5px;
      border-radius: 20px;
    }
    &:first-child {
      &:hover:after {
        content: 'Love it!';
      }
    }
    &:nth-child(2) {
      &:hover:after {
        content: 'Beautiful';
      }
    }
    &:nth-child(3) {
      &:hover:after {
        content: 'Hug';
      }
    }
    &:nth-child(4) {
      &:hover:after {
        content: 'Congrats!!';
      }
    }
    &:nth-child(5) {
      &:hover:after {
        content: 'Hmm...';
      }
    }
    &:nth-child(6) {
      &:hover:after {
        content: 'Wooow!';
      }
    }
  }
}

react-buttons


الجوال

على الجوال، قمت بضبط موضع منتقي الردود ليكون ثابتًا (position: fixed).

هذه خيار ممكن لمنع هذا السلوك الغريب. :arrow_down:
raction-no-fixed

تبدو هكذا :arrow_down:
reactions-fixed

نفس الشيء يحدث مع لوحة الحالة على الجوال التي كانت موجودة في منتقي الردود، لذا استخدم أيضًا position: fixed.

الجوال / SCSS

.discourse-reactions-picker {
  position: fixed;
  .pickable-reaction {
    &:hover:after {
      font-size: 12px;
      top: -8px;
    }
    &.is-used {
      &:hover:after {
        transform: scale(0.8);
        top: -15px;
      }
    }
  }
}

.discourse-reactions-state-panel {
  position: fixed;
}

إخفاء قسم من أعجبهم الافتراضي

عامة / CSS

لقد أخفيت قسم “من أعجبهم” الافتراضي لأن لوحة حالة الردود تعرض أيضًا هذه المعلومات.

.who-liked {
  display: none;
}
25 إعجابًا

أعجبني كثيرًا :love_you_gesture:

5 إعجابات

رائع، هذا يعمل بشكل ممتاز. شكرًا لمشاركتك :clinking_beer_mugs::smiling_face_with_sunglasses::+1::sparkles:

4 إعجابات

لقد قمت بتثبيته وأنا معجب به جدًا.

سؤال:

هل من الممكن إزالة تأثير التحويم الأسود ذلك؟

إعجابَين (2)

مرحبًا باولينا،

يسعدني حقًا أن تعجبك :heart: شكرًا لك!

لإخفاء لوحة قائمة المستخدمين المظلمة عند التمرير، استخدم هذا الكود :slightly_smiling_face:

.discourse-reactions-list .reactions .user-list {
  display: none;
}
4 إعجابات

نجح الأمر معي! أحبّ كيف يبدو، شكرًا جزيلاً لك. :heart:

إعجابَين (2)

مرحبًا دون،

أعجبني تخصيصك كثيرًا. عمل رائع، شكرًا لك! :heart:
لكن لا يزال لدي سؤال: كيف يمكنني التخلص من تأثير التمرير الأسود مثل هذا؟

Selection_060

3 إعجابات

مرحبًا نيو،

شكرًا لك :heart:

للأسف، لا يمكن إخفاء سمة العنوان باستخدام CSS، ولكن يمكنك تعديل النص js.discourse_reactions.picker.react_with في /admin/customize/site_texts لجعله أقصر.

3 إعجابات

شكرًا لك، لقد انتهيت منه، والآن يبدو أفضل! :wave:

3 إعجابات

هذا رائع، @Don. شكراً جزيلاً لك.

أنا أفكر في استخدام هذا على إعدادات Discourse الخاصة بي، ولكن لدينا حاليًا صفين من خيارات ردود الفعل (ستة رموز تعبيرية لكل صف، أي 12 رمزًا تعبيريًا إجمالاً).

أنا أعرف ما يكفي من CSS فقط لتجاوز الأمر، لكنه ليس قوتي حقًا.

ما مدى صعوبة تعديل هذا الكود ليعمل لهذا النوع من الترتيب؟

أقدر حقًا مشاركتك لهذا (حتى لو كنت متأخرًا جدًا عن الحفلة!).

3 إعجابات

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

6 إعجابات

شكراً جزيلاً، @Don! سيكون ذلك رائعاً وإضافة/مكمل مقدر للغاية. سأترقب ذلك بالتأكيد.

3 إعجابات

Happy So Excited GIF

إعجابَين (2)

أهلاً،

لقد قمت بإنشاء مكون سمة من هذا. أعتقد أنه يجعله أسهل. :slightly_smiling_face:

بفضل مكون السمة الذي أنشأه @manuel سابقًا Category List with Banners يمكنني بسهولة تطبيق إعداد القائمة على تسمية ردود الفعل. شكراً لك :heart:

لقد أضفت إصلاحات وبعض الإعدادات:

  1. reactions_label
    افصل بفاصلة منقوطة ;
    اسم رد الفعل؛تسمية رد الفعل
    May-29-2022 17-02-05

  2. reactions picker rounding
    تقريب زوايا منتقي ردود الفعل (border-radius). يمكنك استخدام px، em، إلخ.
    الافتراضي 1em.


    إذا كنت ترغب في جعله أكثر أو أقل استدارة، قم بتغيير هذا الإعداد.
    الإصدار السابق كان 2em.

  3. state panel rounding
    تقريب زوايا لوحة حالة ردود الفعل (border-radius). يمكنك استخدام px، em، إلخ.

  4. user list rounding
    تقريب زوايا قائمة المستخدمين لردود الفعل (border-radius). يمكنك استخدام px، em، إلخ.

  5. hide user list heading
    سيؤدي هذا الخيار إلى إخفاء عنوان قائمة المستخدمين في اللوحة. العنوان هو smiley في هذه الصورة.

  6. hide user list
    سيؤدي هذا الخيار إلى إخفاء لوحة قائمة المستخدمين. هذه هي اللوحة الداكنة التي تظهر عند المرور فوقها.

  7. hide who liked
    سيؤدي هذا الخيار إلى إخفاء قسم “من أعجبهم” الافتراضي.

لدي خطط أخرى لهذا المكون، والتي سأضيفها لاحقًا. :slightly_smiling_face:

17 إعجابًا