איך להסתיר תגיות אחרי N ולהציג "עוד X+" כמו קטגוריות

שלום לכולם,

אני עובד עם נושאים שלפעמים מקבלים הרבה תגיות (רבות מהן נוצרות אוטומטית מפיד ICS). בממשק המשתמש של Discourse, תגיות פשוט ממשיכות להתגלגל, מה שהופך את רשימות הנושאים לגבוהות מאוד וקשות יותר לסריקה.

הייתי רוצה לעשות משהו דומה לאופן שבו קטגוריות מוצגות ברשימות נושאים:

  • להציג את הראשונות (נניח 5)
  • ואז לקפל את השאר מאחורי אינדיקטור “עוד X+”

מה שניסיתי:

  • CSS יכול להסתיר תגיות לאחר מספר מסוים, ואף להוסיף סימן “…” סטטי, לדוגמה:
/* הסתר את כל התגיות אחרי החמישית */
.topic-list .discourse-tags a:nth-of-type(n+6) {
  display: none;
}

/* הוסף ... אחרי החמישית */
.topic-list .discourse-tags a:nth-of-type(5)::after {
  content: " …";
}

זה עובד להסתרה, אבל CSS לא יכול לספור באופן דינמי כמה הוסתרו, כך שאני לא יכול לקבל “+3 נוספות”.

השאלה שלי:

  • האם יש דרך מובנית להגביל תגיות לתצוגת נושא?
  • אם לא, האם יש קטע קוד לדוגמה (אולי מתצוגת קטגוריות) שאוכל להתאים לרכיב ערכת נושא כדי להוסיף את הלוגיקה של “+X נוספות” לתגיות?

תודה מראש!

לייק 1

האם הצלחת להבין את זה? זה לא נתמך בליבת Discourse, אם כי סביר להניח שתוכל לעשות זאת באמצעות רכיב ערכת נושא.

יש הגדרה ברירת מחדל של max tags per topic (מקסימום תגיות לנושא) אשר ברירת המחדל שלה היא 20, ואני חושב שזו ברירת מחדל סבירה ואינה מובילה לעטיפה רבה מדי. אני מניח שבכל מקרה נדיר לרצות כל כך הרבה תגיות.

:eyes:
20?

Yes, you are right! I had upped it to 20 on my site. The default is 5 which is perfectly sane.

Your eagle eye never ceases to amaze me.

לייק 1

yeh, my importer script actually has shortend UID tag creation disabled, since it creates the hidden HTML UID marker

נושא זה נסגר אוטומטית 14 ימים לאחר התגובה האחרונה. לא ניתן להוסיף תגובות חדשות.