يمكنك على الأرجح القيام بذلك باستخدام بعض CSS.
قبل الرسالة الأخيرة، جربت ما يلي. لقد أصلح المشكلة المتعلقة بحجم خط الميزة، ولكنه جعل حجم خط قائمة مواضيع الصفحة الرئيسية بأكملها صغيرًا جدًا.
.featured-topic {
font-size: 9px;
}
هل تشير إلى هذه الروابط؟

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

أزلت كود CSS، وعاد حجم الخط في قائمة المواضيع إلى طبيعته.

حسناً. جرب هذا:
.featured-topic h3 a {
font-size: 9px;
}
شكراً لك! إنه يعمل!
طلب ميزة: يرجى إضافة القدرة على عرض مقتطف من الموضوع
هل من الممكن أن تكون ميزة العلامات (Tag-Feature) معطوبة أو تتصرف بشكل غير متوقع عند العمل مع مجموعة علامات مقيدة؟
لقد أنشأت مجموعة علامات بالقيد التالي:
العلامات مرئية للجميع، ولكن المجموعات التالية فقط هي التي يمكنها استخدامها
- المسؤولون، المشرفون

أضفت العلامة ‘featured’ من هذه المكونة إلى هذه المجموعة.
هذه هي إعدادات المكونة لدي:
عندما أقوم بإنشاء موضوع بصفتي مسؤولاً باستخدام العلامة featured، تكون العلامة مرئية لي وللمشرفين، ولكن ليست مرئية لمجموعات المستخدمين الأخرى. بالنسبة للمستخدمين المسجلين الآخرين، تظهر تمامًا كما يلي:
Tag1, Tag2,
بالنسبة للمسؤولين والمشرفين، ستظهر العلامة featured بشكل صحيح:
Tag1, Tag2, featured
شيء آخر: إذا كانت مخفية، أعتقد أنه لا ينبغي عرض الفاصلة. هذا يربك المستخدمين.
أيضًا، لست متأكدًا مما إذا كان هذا ذا صلة، ولكن المواضيع موجودة في فئات مرئية فقط للمستخدمين المسجلين، وليس للضيوف.
آه، وبالمناسبة: شكرًا لك على المكونة، عمل رائع! بخلاف تلك الميزة الصغيرة، إنها تعمل بشكل مثالي بالنسبة لي!
ها، وجدت موضوعي القديم عندما كنت أبحث عن إزعاج بسيط ![]()
لذا أدركت للتو (مرة أخرى) أن الصور الفعلية التي يتم تحميلها ضخمة مقارنة بحجمها الفعلي عند العرض. في حالتي، يتم تحميل صورة بحجم 1000x1000 بكسل وعرضها بأقل من 200 بكسل.
تحققت من بعض البيانات، وإذا كان بإمكاني استبدالها بالإصدار بحجم 400x400 بكسل، فسيوفر ذلك حوالي 83% من عرض النطاق الترددي (للصف المميزة)، أو 1.6 ميجابايت إجمالاً. أعلم أن هذه الصور مخزنة مؤقتًا، لكن هذا سيؤثر بالتأكيد على تحميل الصفحة الأولي وأعتقد أنه لن يساعد أيضًا في تسريع عرض الصفحة؟ أستخدم هذه الصور المميزة في كل صفحة على منتداتي، لذا أعتقد أن التأثير حقيقي.
هل من الممكن إضافة خيار إلى تكوين TC للسماح لنا باختيار حجم الصورة المراد استخدامه، بحيث يمكن للجميع ضبط ذلك وفقًا لسيرهم الخاص؟
ملاحظة رائعة! لقد مر وقت طويل منذ أن نظرت في هذا المكون، لذا تمكنت من إجراء تحسينات عامة:
https://github.com/discourse/discourse-homepage-feature-component/pull/96
هذا التحديث يجعل الصور تستخدم srcset، بحيث يتم استخدام الصورة المناسبة للحاوية تلقائيًا. يمكن تحديد الأحجام المتاحة باستخدام الإعداد الجديد `featured_image_sizes`.
كما قمت بإصلاح الإعداد hide featured tag (لم يكن يعمل، مما أدى إلى إخفاء العلامات دائمًا)، وتحديثه إلى نوع الإعداد tags بدلاً من حقل إدخال النص العادي. هذا يعني أيضًا أنه يمكن استخدام علامات متعددة إذا رغبت في ذلك.
رائع، شكراً لك! أعتقد أن هذا يحل أيضاً مشكلة علامة “المميز” المفقودة التي كانت محيرة للغاية.
لكن هناك شيء واحد: منذ التحديث، بدأ هذا الكثير من مهام معالجة الصور - لدي أكثر من 20 ألف مهمة في قائمة الانتظار الآن. هل هذا متوقع؟ يبدو مضيعة للوقت لأنني أحتاج حقاً إلى آخر 5 فقط…
حسناً، نعم، نقطة جيدة. للأسف، لا توجد طريقة لتجنب ذلك. أعتقد أنه من الأفضل التراجع عن ذلك الجزء بسبب ذلك. سأقوم بذلك هنا:
الحقيقة هي أنني لا أستطيع إنشاء مجموعة محددة من صور المصغرات المحسّنة من هذا السمة بهذه الطريقة، يجب أن يكون الأمر إما الكل أو لا شيء. لذلك، سنحتاج إلى طريقة أخرى لتحسين الحالات الأكثر محدودية مثل هذه.
فهمت. هل سيتم إزالة الصور المصغرة غير الضرورية تلقائيًا لاحقًا؟
ويبدو أن قالب موقعي يحتوي بالفعل على مجموعة متنوعة من تنسيقات الصور التي قد تعمل بشكل جيد - مثل 400x400 أو 500x500. ماذا عن جعل هذه الخيارات قابلة للاختيار؟ مقارنةً بـ 1024x1024 المستخدمة حاليًا، سيوفر ذلك بالفعل توفيرًا لطيفًا في عرض النطاق الترددي، دون أي معالجة إضافية أو عبء تخزين.
(تجاهل الصور ذات الأبعاد 300x300 و600x600 و900x900 التي تمت إضافتها بواسطة تحديث TC):
-rw-r--r-- 1 1000 www-data 723K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_1000x1000.jpeg
-rw-r--r-- 1 1000 www-data 757K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_1024x1024.jpeg
-rw-r--r-- 1 1000 www-data 30K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_200x200.jpeg
-rw-r--r-- 1 1000 www-data 68K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_300x300.jpeg
-rw-r--r-- 1 1000 www-data 118K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_400x400.jpeg
-rw-r--r-- 1 1000 www-data 185K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_500x500.jpeg
-rw-r--r-- 1 1000 www-data 263K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_600x600.jpeg
-rw-r--r-- 1 1000 www-data 417K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_750x750.jpeg
-rw-r--r-- 1 1000 www-data 470K Jun 23 21:32 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_800x800.jpeg
-rw-r--r-- 1 1000 www-data 595K Jun 30 22:18 80c77ac08d5671a1dc6d2a15ddea28e6d56f98c9_2_900x900.jpeg
لا أعتقد ذلك، لأن الصور الأصلية لا تزال قيد الاستخدام، وهذه هي الإصدارات المحسّنة. لا يوجد ضرر حقيقي سوى استهلاك بعض مساحة التخزين.
يمكنك تنظيفها من وحدة تحكم Rails، وهذا يغطي الأحجام التي كانت مدرجة افتراضيًا للإعداد، ولن يزيل الصور التي تم إنشاؤها من معدّل في مكان آخر.
# 1. انظر إلى ما يوجد فعليًا مقابل ما لا يزال مسجلاً بشكل شرعي
still_needed = Topic.thumbnail_sizes +
ThemeModifierHelper.new(theme_ids: Theme.pluck(:id)).topic_thumbnail_sizes
TopicThumbnail.group(:max_width, :max_height).count
# 2. إزالة الأحجام غير المرغوب فيها (الملفات + السجلات)
[[300, 300], [600, 600], [900, 900]].each do |w, h|
next if still_needed.include?([w, h]) # لا تلمس الأحجام التي لا يزال شيء آخر يستخدمها
TopicThumbnail
.where(max_width: w, max_height: h)
.find_each { |tt| tt.optimized_image&.destroy! }
# السجلات المحاولات التي لا تحتوي على صورة محسّنة لا تتسلسل
TopicThumbnail.where(max_width: w, max_height: h).delete_all
end
نعم، فكرة جيدة — يمكنني التحقق لمعرفة ما إذا كانت هناك صور مصغرة موجودة بالفعل، وإذا وجدت، استخدم أفضل حجم. إذا كانت الصور الأصلية فقط متاحة، فستعمل دائمًا كبديل.
أقوم بذلك هنا:
رائع، سأختبر ذلك الليلة!
وكنت قد عدت للتو إلى هنا لإعادة طرح طلب قديم لي: هل من الممكن إضافة خيار لفرز صف "المميز
للأسف، لا أعتقد أن ذلك ممكن… ليس لدينا طريقة لفرز قائمة المواضيع حسب وقت إضافة الوسم. إحدى طرق التخطي لهذا الأمر هي تعديل الطابع الزمني للموضوع؟
لا تقلق. أنا أتعامل مع الأمر الآن باستخدام بعض “اللاصق” المؤقت: لقد قمت بإنشاء نسخة خاصة من TC الخاص بك وأنشأت استعلام Data Explorer لجلب المواضيع المميزة، مرتبة حسب تاريخ الوسم وتضمين روابط الصور. يقوم سكريبت ويب خارجي صغير بتحميل هذه البيانات وتخزينها مؤقتاً وإرجاع JSON إلى TC. يعمل بشكل رائع، حتى لو كان يبدو قليلاً غير أنيق ![]()
سعيد بمشاركة الكود والاستعلام الخاص بي إذا احتاج أي شخص إليه.
تحديث: حسنًا، أدركت أن هذه كانت في الواقع نصف مشكلتي فقط. نحن نستخدم أيضًا ميزة الصفحة الرئيسية (Homepage Feature TC) لعرض معرض لأعمال الفن المميزة. ولم يتطابق ترتيب المعرض الآن مع ترتيب صفنا المميز، مما أربك الزوار (وأزعجني). لذلك، كان يتعين فرز المعرض حسب تاريخ الوسم أيضًا - وليس فقط تاريخ إنشاء الموضوع أو آخر تاريخ للنشاط.
وهنا تحولت إلى “Claude Code” للحصول على المساعدة. أولاً، طلبت منه إنشاء إضافة صغيرة لإضافة خيار لفرز قوائم الوسوم حسب تاريخ الوسم، مثل /tag/featured?order=tag_date.
بمجرد أن عمل ذلك، قمت بتوسيع خيار الفرز في ميزة الصفحة الرئيسية (Homepage Feature TC) بإضافة tag_date. كما غيرت عنصر واجهة المستخدم من مربعات الاختيار إلى قائمة منسدلة:
وإليكم النتيجة! لدي الآن صف مميز يعمل بالطريقة التي أريدها (وبصراحة، بالطريقة التي أعتقد أنها يجب أن يعمل بها
)، ومعرض يتطابق معه:
إذا أراد أي شخص التجربة، إليك الكود الخاص بي:
يمكنكم مشاهدته أثناء العمل على https://blenderartists.org/
تحذير عادل: كل هذا العمل هو من “Claude Code”. راجعت ما استطعت، ولكن في النهاية لست خبيرًا في هذا المجال. سأقوم بتحديث هذه الإضافات حسب الحاجة لأنها جزء أساسي من مجتمعنا المتخصص في الرسوميات ثلاثية الأبعاد.
استمتعوا!


