القدرة على حذف العلامات التي تحتوي على أقل من N مواضيع

لقد صادفت للتو هذه الميزة الرائعة “حذف الوسوم غير المستخدمة”، وأصبحت أرغب في المزيد!

متابعة للنقاش من دليل شامل لوسوم Discourse:

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

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

لكن في الوقت الراهن، أعتقد أن توسيع الميزة الحالية للسماح بـ “حذف الوسوم المستخدمة في أقل من __ موضوع” يمكن أن يكون تحسينًا رائعًا سنستفيد منه.

4 إعجابات

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

count < N && topic_last_updated > X أشهر مضت

ببساطة، تمنح الوسوم فرصة للتمسك بالأرض. يتم تجديد حياتها إذا نُشِر مواضيع جديدة قبل انتهاء مهلة معينة. ولكن إذا لم يُنشَر أي موضوع جديد لأكثر من، لنقل، 3 أشهر، وكان الوسم يحتوي على أقل من 5 مواضيع، فقم ببساطة بحذفه.

6 إعجابات

أعتقد أيضًا أن هذه اقتراحات جيدة لتحسين وظيفة تنظيف الوسوم @neil

إعجابَين (2)

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

إعجابَين (2)

في الوقت الحالي، إليك استعلام #plugin:data-explorer يمكن أن يساعد المستخدمين في تحديد وسوم مرشحة للحذف:

-- [المعلمات]
-- int :months_since_used = 24
-- int :max_topic_count = 50

with
t as (
  select 
    current_date::timestamp - (:months_since_used * (INTERVAL '1 months')) as cutoff_date
),
topic_tag_dates as (
  select tags.id, tags.name, tags.topic_count, topics.last_posted_at as last_used
  from topic_tags
  left join tags
  on topic_tags.tag_id = tags.id
  left join topics
  on topic_tags.topic_id = topics.id
),
max_last_used as(
  select id, max(last_used) mx from topic_tag_dates
  group by id
),
tag_last_used as (
  select topic_tag_dates.id, name, topic_count, last_used from topic_tag_dates
  left join max_last_used
  on topic_tag_dates.id = max_last_used.id
  where max_last_used.mx = topic_tag_dates.last_used
)
select id,name,topic_count,last_used from tag_last_used, t
  where tag_last_used.last_used < t.cutoff_date
  and topic_count < :max_topic_count
  order by topic_count desc
5 إعجابات

أعتذر عن الرفع،

نعم، هذا الأمر مطلوب بشدة، حيث قرر بعض الأعضاء في منتداي أنه من المضحك المزاح ونشر وسوم ‘مثيرة للاهتمام’ غير مناسبة لجميع الأعمار، لذا أرغب في رؤية ميزة من هذا النوع.

شكرًا لك.

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

إذًا، كيف يمكن تشغيله لحذف العلامات إذا كانت المواضيع = 1؟

لأن المنظف الافتراضي يحذف العلامات بدون مواضيع فقط. نحن نقوم بتثقيف موظفينا وقد قيدت إنشاء علامات جديدة.