زر عنوان الموضوع الجديد

I guess best behaviour would be to start the composer with empty category if the user does not have the permission to create new topic in the current one? Potentially with a modal and a notice about such.

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

المستودع: GitHub - Peterlollo/discourse-new-topic-button-for-all-users-theme-component: Adds new topic button to header and shows it to every user regardless of logged in status

إعجابَين (2)

هناك بعض أسماء الفئات القديمة، لذا لا تظهر الأنماط كما هو مقصود. تمت إضافة طلب سحب لتحديثها: FIX: update declarations by nolosb · Pull Request #6 · discourse/discourse-new-topic-button-theme-component · GitHub

4 إعجابات

هل من الممكن تحديث هذه الإضافة إلى الإصدار الجديد؟

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

لقد قمت للتو بدمج إعادة هيكلة لهذا المكون ليعمل مع هذه التحديثات: Upcoming Header Changes - Preparing Themes and Plugins

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

5 إعجابات

لقد أضفت للتو إعدادًا جديدًا show_to_anon (معطل افتراضيًا) سيؤدي إلى تحقيق ذلك.

3 إعجابات

ما مدى “جدوى” إضافة قائمة منسدلة تمامًا مثل مكون “nolo’s dropdown wizard component”؟

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

مرحباً، لم أتمكن من استخدام أيقونة “pencil” المجانية من FontAwesome في هذا المكون حتى بعد إضافتها إلى إعدادات “svg icon subset”. هل لديك أي فكرة؟

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

لا أعتقد أن هناك أيقونة pencil مجانية في الإصدار 5

أعتقد أن الأمر نفسه ينطبق على pencil في الإصدار 5، وهو pencil-alt

4 إعجابات

شكرا! لقد نجح الأمر!

إعجابَين (2)

تم تقسيم منشور إلى موضوع جديد: No New Topic button

أهلاً،

هل من الممكن تحديث TC بالتحديث الجديد المسودة؟

شكراً لك

إعجابَين (2)

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

شكرا

من السهل جدًا القيام بذلك باستخدام CSS:

(يمكنك استهداف السمات الداكنة والفاتحة باستخدام CSS)


تعديل: إضافة مثال مناسب

#new-create-topic {
    background-color: light-dark(red,green);
}

سيؤدي هذا إلى تعيين لون الزر إلى اللون الأحمر في السمة الفاتحة، والأخضر في السمة الداكنة.

إعجابَين (2)

ما زلت لست على دراية بـ CSS في Discourse. أنا على دراية بـ CSS، لكنني لم أبدأ في استكشافها داخل Discourse بعد.
كيف/أين أضيف ذلك؟

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

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

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


لقد أضفت رمز CSS في مشاركتي أعلاه.

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

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

#new-create-topic:hover {
    background-color: light-dark(red,red);
    color: light-dark(red,white);
}

#new-create-topic .d-icon:hover {
    color: light-dark(red,white);
}
إعجاب واحد (1)

قاعدتك الثانية تعني أنك تستهدف الأيقونة عند تمرير مؤشر الفأرة فوق الأيقونة، وليس الزر.

باستخدام صيغة SCSS، والتي

#new-create-topic:hover {
    background-color: light-dark(red,red);
    color: light-dark(red,white);
}
#new-create-topic:hover .d-icon {
    color: light-dark(red,white);
}

(أيضًا لا حاجة لـ light-dark(red,red); إذا كنت تستخدم نفس اللون للضوء والظلام)

أوصي بـ SCSS لأنها أسهل في تنظيم الكود الرائع الخاص بنا، ولكن هذا شيء جديد لتعلمه 😄
#new-create-topic:hover {
    background-color: light-dark(red,red);
    .d-icon,
    & {
        color: light-dark(red,white);
    }
}
إعجاب واحد (1)

أنت على حق. خطئي… شكراً!

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

فيما يتعلق بـ SCSS، لقد تعلمتها قبل بضع سنوات، لكنها كانت شيئًا لم أستخدمه حقًا أبدًا بما أنني لست مطورًا. أستخدم HTML و CSS كثيرًا، لذا أنا على دراية بهذين الاثنين أكثر قليلاً.

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

لقد وجدت هذا الرمز لإجراء هذا التعديل، لكنني لست متأكدًا مما إذا كانت هذه هي أفضل طريقة للقيام بذلك:

<script type="text/discourse-plugin" version="0.8">
  api.onPageChange(() => {
    const newTopicButton = document.querySelector('.header-create-topic');
    const draftsButton = document.querySelector('.topic-drafts-menu-trigger');

    if (newTopicButton && draftsButton && !document.querySelector('.fk-header-buttons')) {
      const wrapper = document.createElement('div');
      wrapper.className = 'fk-header-buttons';

      const parent = newTopicButton.parentNode;
      parent.insertBefore(wrapper, newTopicButton);

      wrapper.appendChild(newTopicButton);
      wrapper.appendChild(draftsButton);
    }
  });
</script>