لافتة متعددة الاستخدامات

:discourse: ملخص يضيف “Versatile Banner” شريطًا مخصصًا قابلًا للتخصيص إلى موقعك.
:eyeglasses: معاينة معاينة في منشئ سمة Discourse
:hammer_and_wrench: رابط المستودع https://github.com/discourse/discourse-versatile-banner
:open_book: جديد في سِمات Discourse؟ دليل المبتدئين لاستخدام سِمات Discourse

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

الميزات

هذا مكون سمة هو تطور لجهود الشريط السابقة. الهدف هو توفير المزيد من السهولة والمرونة من خلال استخدام إعدادات السمة.

فيما يلي أبرز الميزات:

  • تقييد العرض للمستخدمين المسجلين أو المستخدمين المجهولين
  • تقييد العرض ليكون حصريًا للجوال أو سطح المكتب
  • تقييد العرض لصفحات محددة
  • خيارات قابلة للإغلاق، قابلة للتوسيع، وبارزة دائمًا
  • خيار عرض كامل عرض المتصفح
  • إدارة الألوان
  • تخصيص العناوين والأعمدة باستخدام HTML (انظر أدناه للمزيد)
  • خيار الحالة المستمرة (انظر أدناه للمزيد)

تخصيص محتوى شريطك

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

استخدام خيار الحالة المستمرة

سيعتمد خيار الحالة المستمرة على ما يصل إلى اثنين من ملفات تعريف الارتباط. ستحتوي هذه الملفات على اسم للشريط وقيمة true/false تتعلق بحالة الشريط. إذا كانت لديك أي مخاوف بشأن استخدام ملفات تعريف الارتباط على موقعك، فمن الأفضل تجنب استخدام هذا الإعداد. اختيار خيار الوقت النسبي لإعداد cookie_lifespan سيضمن بقاء الشريط مغلقًا/موسعًا/منكمشًا لمدة ذلك الوقت بعد أن يضغط المستخدم على الزر المناسب. بدون هذا الإعداد، يتم إعادة تعيين الشريط مع كل تحميل كامل للصفحة. إذا قمت بتغيير في الشريط وتريد التأكد من أن جميع المستخدمين يرون هذه التغييرات، حتى أولئك الذين أغلقوا الشريط سابقًا، فتأكد من تغيير «اسم ملف تعريف الارتباط». سيؤدي ذلك في الأساس إلى إعادة تعيين أي حالة مستمرة، ثم السماح للمستخدم بإغلاق الشريط مرة أخرى

الإعدادات

الاسم الوصف
show for members عرض الشريط للمستخدمين المسجلين في المنتدى
show for anon عرض الشريط للمستخدمين المجهولين
display on mobile عرض الشريط على أجهزة الجوال
display on desktop عرض الشريط على أجهزة سطح المكتب
display on homepage عرض الشريط في الصفحة الرئيسية
url must contain أدخل المسارات التي يجب أن تعرض الشريط. أضف * في نهاية المسار كعلامة wildcard
dismissible السماح للمستخدمين بإغلاق الشريط
collapsible السماح للمستخدمين بتوسيع الشريط وانكماشه
default collapsed state حالة الانكماش الافتراضية عند تمكين إعداد collapsible
cookie lifespan عمر ملف تعريف الارتباط المستخدم لتذكر ما إذا كان الشريط قد تم إغلاقه أو توسيعه أو انكماشه. إذا تم تعيينه على «لا شيء»، فلن يتم استخدام أي ملفات تعريف ارتباط مع هذا المكون، وسيتم حذف أي ملفات تعريف ارتباط تم إنشاؤها سابقًا تتعلق بالشريط في المرة التالية التي يقوم فيها المستخدم بتحميل الصفحة بالكامل. يتم قياس القيم كوحدة واحدة، لذا فإن تعيين «سنة» سيكون سنة واحدة، و«أسبوع» سيكون أسبوعًا واحدًا، إلخ.
cookie name عند إجراء تغييرات مهمة على الشريط، يجب عليك تغيير اسم ملف تعريف الارتباط لضمان رؤية جميع المستخدمين للتغييرات.
full width banner عرض الشريط بعرض المتصفح الكامل
swap default positioning إذا كان هناك مكون آخر مرتبط بالشريط نشطًا، فاستخدم هذا لتبديل موضعه مع Versatile Banner
plugin outlet يضع below-site-header الشريط فوق الشريط الجانبي، بينما يضع above-main-container الشريط فوق المحتوى بجانب الشريط الجانبي
banner background image عنوان URL للمصدر لصورة الخلفية الخاصة بك. نصيحة: يمكنك رفع صورة إلى سمتك الرئيسية واستخدام عنوان URL منها، ولكن تأكد من عدم استخدام قسم «التحميلات» في هذا المكون. سيتم حذف أي تحميلات مضافة إلى هذا المكون عند كل تحديث.
banner background image dark عنوان URL للمصدر لصورة الخلفية عند اكتشاف وضع النظام الداكن.
background color يُستخدم بدلاً من صورة الخلفية
background color dark يُستخدم بدلاً من صورة الخلفية عند اكتشاف وضع النظام الداكن.
primary text color لون النص الرئيسي للشريط
primary text color dark لون النص الرئيسي للشريط عند اكتشاف وضع النظام الداكن
secondary text color لون نص الأيقونة وعناوين النصوص، ولون خلفية الزر.
secondary text color dark لون نص الأيقونة وعناوين النصوص، ولون خلفية الزر عند اكتشاف وضع النظام الداكن.
link text color لون نص الروابط داخل الشريط
link text color dark لون نص الروابط داخل الشريط عند اكتشاف وضع النظام الداكن.
الترجمة الافتراضي
close.title إغلاق الشريط
close.label إغلاق
toggle.title توسيع/انكماش الشريط
toggle.collapse_label انكماش
toggle.expand_label توسيع

:discourse2: مستضاف بنا؟ تتوفر مكونات السمة للاستخدام في خطط Pro وBusiness وEnterprise لدينا.

101 إعجاب
Homepage Banner
Homepage specific design and content
Showing two banners: one to anonymous users, and one for logged-in members
Discourse Theme Creation
Activated child Component and broke Discourse!
How to add a simple Banner
Adding a new banner just above the logo
Banner on Discourse
Landing page customization
Message to display to only users without accounts/logged in?
Turned my Discourse into a successful ecommerce platform!
Adding a new banner just above the logo
Ideas for highlighting content on our forum
Impact of component positioning with 2.5.0.beta6
Using an Image for a Global Banner Topic - Dimensions?
Showing a Warning to Non-Registered Users
Customise home login page
Enhancing My engineering Community Landing Page - Technology Support Category
How to add top welcome message to the board
How is the Banner at meta.discourse.org created?
Is it possible to change the order of topics?
Can the new About page be more visible?
Need help to emulate old forum
Creating a banner that only 1 group can see, while the other groups don't
Sticky global notice
Banner text customization for Subscriptions plugin
How to I stop topics automatically un-pinning when a user reaches the bottom?
How to insert Versatile Banner before the content of the post.?
Need guidance for adding description bar
Customizing your site with existing theme components
Homepage Feature
How to Set a Closable Banner at the Top of site?
Order of two items in the same plugin outlet
How to add this type of banner?
Customize Your Site Branding
Can the new About page be more visible?
Asking for advice on "How to create a Banner on the main page"/
No HTML in global notice
Welcome Link Banner theme-component with photos
How to apply CSS code only in the discourse home page?
How to make the automatic dark theme the same as the selected dark theme?
Make the Welcome Banner less intrusive
Your own banner with a link
I want add photo for download my app
How to add title and buttons naturally above forum topics?
Where shall I put this code for a top banner?
Is it possible to insert a box of text between the header and topic list?
How do I create a welcome banner like the one on this site?
Customizing the groups page
What are good plugins or theme components for a forum emphasizing pictures?
Creating a banner to display at the top of your site
Horizon Theme
Missing margin in the .banner- box for Versatile Banner TC
What Are Some Good Welcome Banner Designs?
App interviewer
How minimal is your forum?
How to add a header image and customize it
Category Banners
Как сделать заголовок H1 на главной странице
Как поставить Банер на главной странице
Hover preview and quote of the day
Creating a "Featured Categories" homepage banner
Making my discourse site look a certain way
Help with alignment in the "versatile banner" plugin
Make Banner Undismissable
Can I add a banner only on my homepage?
Welcome message at the top
Globally pinned topic only appears in one category
Pin a post even in the categories home page
How do i turn of unpin/pin option for my forum users?
[PAID] Assistance to Set-up My Forum
Custom HTML on Groups page
Banner diference mobile/web
Help me code menu top same image
Publish a notification at top of the page
How to create a welcome banner/section?
Landing page customization

مرحباً يا أصدقاء! أريد جعل جميع النصوص محاذية لليسار، لكن سمة CSS لا تعمل معي. هل يمكن لأحد أن يخبرني بالضبط كيف يمكننا فعل ذلك؟

3 إعجابات

هل هذا على ما يبدو ما تبحث عنه؟

إذا كان الأمر كذلك، إليك كود CSS سريع وغير منقح قد يساعدك على البدء:

.banner-box {
  h1,
  h2,
  h3,
  .row .single-box {
    text-align: left;
    & .banner-list {
      display: block;
      ul {
        margin: 0 0 9px 25px;
      }
    }
  }

  .section-header {
    .x-title {
      padding: 25px 15px;
    }
    .description p {
      text-align: left;
    }
  }
}

ستحتاج إلى إنشاء مكون جديد باسم “تخصيصات اللافتة متعددة الاستخدامات” وإضافة كود CSS المذكور أعلاه إلى قسم Common. تأكد من إضافة المكون الجديد إلى أي سمة نشطة تستخدم لافتة Versatile Banner لتطبيق التخصيصات.

5 إعجابات

نجح هذا معي. شكرًا جزيلاً لك.

3 إعجابات

مرحبًا،

هل من الممكن تحويل صورة الخلفية إلى صورة قابلة للنقر؟

شكرًا لك على ردك.

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

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

كيف يمكنني تعديل ارتفاع اللافتة؟

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

مرحباً @tshenry، أنا أستخدم مكون موضوع “Versatile Banner” لكنه يختفي عندما ألغي تحديد خيار “العرض على سطح المكتب”. في الواقع، أود عرض اللافتة فقط على الأجهزة المحمولة.

لكن عندما ألغي تحديد خيار “العرض على سطح المكتب”… تختفي لافتة “Versatile Banner” على كل من سطح المكتب والأجهزة المحمولة.
إليك الموقع إذا أردت التحقق: https://hec.fm

هل فاتني شيء ما؟

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

هل من الممكن عرض الروابط أفقيًا على الأجهزة المحمولة أيضًا؟ لقد فوجئت قليلًا برؤيتها تظهر تحت بعضها البعض بدلاً من أن تكون أفقية.

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

شكرًا لك على الإبلاغ عن ذلك! نعتذر عن التأخير في الرد. لقد تمكنت من تكرار ما تصفه. أنا متأكد تقريبًا من فهم ما يحدث. سألقي نظرة على الأمر في وقت لاحق من هذا الأسبوع وأعود إليك.

يعتمد ارتفاع اللافتة بشكل أساسي على محتواها، ولكن يمكنك تعديل أي شيء حسب الحاجة باستخدام CSS الخاص بك. لست متأكدًا من مدى قدرتك على دمج ثلاثة أعمدة أفقيًا على الجوال، ولكن يمكنك بالتأكيد المحاولة باستخدام CSS مخصص أيضًا! راجع Making custom CSS changes on your site للحصول على بعض النصائح.

4 إعجابات

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

هنا، السهم موجه للأعلى:

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

يبدو هذا السلوك غريبًا جدًا…

إعجابَين (2)

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

تم تحديد خيار ‘عرض اللافتة للمستخدمين المجهولين’ في إعدادات المكون.

عند فحص كود HTML، يوجد عنصر div يحمل فئة ‘banner-box’ داخل مجموعة من عناصر div ذات الفئات ‘emberX’، لكن لا يوجد شيء داخل عنصر div ذي فئة ‘banner-box’ - على عكس كود HTML للمستخدمين المسجلين.

هل لديكم أي فكرة عما قد يكون خاطئًا؟

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

لقد دفعت للتو تحديثًا صغيرًا للمكون.

يجب أن يكون هذا قد تم إصلاحه بالتحديث أعلاه. أنا آسف جدًا لكون الأمر استغرق كل هذا الوقت لإيجاد حل. شكرًا مرة أخرى على تقريرك!

ستحتاج إلى إضافة /login إلى إعداد السمة “يجب أن يحتوي الرابط على”. راجع هذا المنشور للحصول على مزيد من التفاصيل.

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

3 إعجابات

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

حاول تغييره عبر سكريبت: '“api.changeWidgetSetting(‘banner-content-widget’, ‘href’, ‘<site_adresse>’)” لكن اللافتة المتعددة الأغراض توقفت عن العمل.

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

شكرًا لك، هذا رائع. إنه يعمل بشكل مثالي الآن! :folded_hands:t2:

إعجابَين (2)

قد تتمكن من فعل شيء مثل:

<script type="text/discourse-plugin" version="0.10.0">
  // إضافة الرابط إلى العنوان
  api.reopenWidget("banner-box-widget", {
    html(attrs) {
      let bannerBox = this._super();
      bannerBox[0].children[1].tagName = "A";
      bannerBox[0].children[1].properties.href = "https://meta.discourse.org";
      return bannerBox;
    }
  });
  
  // إضافة الرابط إلى بقية المحتوى
  api.reopenWidget("banner-content-widget", {
    html(attrs) {
      let bannerContent = this._super();
      bannerContent.tagName = "A";
      bannerContent.properties.href = "https://meta.discourse.org";
      return bannerContent;
    }
  });
</script>

وإضافة قاعدة CSS لضبط لون الرابط:

.banner-box a {
    color: var(--primary);
}

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

أضف ما يلي إلى قسم “بعد الرأس” المشترك:

<a href="https://meta.discourse.org">
  <div class="custom-banner">
    <h2>هذه لافتة مخصصة!</h2>
  </div>
</a>

وأضف ما يلي إلى قسم “CSS” المشترك:

 .custom-banner {
   display: flex;
   justify-content: center;
   align-items: center;
   width: $large-width; // 1110px
   height: 200px;
   margin-bottom: 15px;
   background: grey;
   color: white;
 }

هذا سيعطيك لافتة بسيطة قابلة للنقر بالكامل:

3 إعجابات

أقوم بتثبيت هذا المكون من git، لكن يبدو أنني لم أحصل على أحدث الأكواد. لم يتم تحديث الرابط FIX: Work with new sticky header and move away from deprecated $.cookie · discourse/discourse-versatile-banner@0939120 · GitHub في موقعي https://ygobbs.com/.

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

هذا لأنك تشغل إصدار Discourse 2.6.0.beta2. التخصيص الذي ربطت به يتطلب الإصدار 2.6.0.beta3 وما بعده. ستلاحظ أن التخصيص الذي ربطت به أضف ملف discourse-compatibility لضمان عدم تحديثك إلى تخصيص غير متوافق مع إصدار Discourse الخاص بك.

5 إعجابات

واو، إنه أمر مذهل أن Discourse سيجد لي الإصدار الأقدم بدلاً من منعني من تثبيت المكون. شكرًا لك!

3 إعجابات

مرحباً @tshenry،
أرغب في تثبيت المكوّن أكثر من مرة لاستخدام كل نسخة لعرض بانرات مختلفة لفئات مختلفة؛ لذا قمت بتعطيل خيار “العرض في الصفحة الرئيسية” واستخدمت شرط “يجب أن يحتوي الرابط على”، لكن هذا يمنع المكوّن الرئيسي الذي أستخدمه لعرضه في الصفحة الرئيسية فقط. هل يمكنك تقديم حل بديل، أم أن هذه مشكلة؟ شكراً! (:

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