البحث في المواضيع العامة والرسائل الخاصة في وقت واحد وتعيين هذا الخيار كافتراضي

Is there a way to search for both public topics and PMs at once – and make that the default behavior for my site?

User case: I often know I’ve talked with someone about something but I can’t recall whether it was a message or a topic. To find it, I sometimes have to do two searches. And that’s charitably assuming that I use the correct keywords, which isn’t always the case :slight_smile:

3 إعجابات

أود أن أجرب جعل Search public topics and PMs simultaneously السلوك الافتراضي في منتدانا.

هل جرب أحد هذا من قبل؟

السياق:
نحن نستخدم Discourse كمنصة اتصال لمدرسة. معظم الفئات مقيدة للمجموعات.
يعد التواصل عبر الرسائل الخاصة (PMs) هو الطريقة المعتادة لمخاطبة الأشخاص عبر المجموعات.
عند البحث عن محادثة، لا يتذكر المستخدمون ما إذا كانوا سيبحثون عن رسالة خاصة أو موضوع.

4 إعجابات

لم أسمع عن ذلك من قبل - يبدو وكأنه طلب ميزة لذلك سأقوم بنقله إلى #الميزة.

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

متابعةً للنقاش من Surface in:all as an option in the Advanced Search UI:

اتضح أن هذا ليس بالأمر السهل! ومن هنا جاء طلب ميزة جديد.

في نسختنا، التي تستخدم صناديق بريد المجموعات بشكل كبير، من الشائع جدًا الرغبة في تضمين الرسائل في البحث. يؤدي إضافة in:all قبل البحث إلى تحقيق ذلك، ولكنه ليس شيئًا يسهل تعليمه للمستخدمين.

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

أود أن تتوفر طريقة لجعله البحث الافتراضي لمستخدمي (ولي أيضًا!).

3 إعجابات

هممم… ربما يمكنك استخدام JavaScript لإضافة in:all إلى مربع البحث؟

لقد حاولت باستخدام بعض جافاسكريبت (JavaScript)، ولكن هذا يتجاوز قدراتي وقدرات دعم الذكاء الاصطناعي الغبي الذي أملكه. أي اقتراحات؟

هممم… ماذا عن شيء كهذا:

document.addEventListener("DOMContentLoaded", () => {
  if (window.location == "/search") {
    const searchBar = document.getElementById("someId");
    searchBar.value = "in:all";
  }
});

هذا من ذاكرتي، ليس لدي حاسوبي المحمول لأنني في إجازة.

الحل الأفضل هو استخدام api.onPageChange لواجهة برمجة تطبيقات المكون الإضافي (plugin API)، ولكن هذا قد ينجح أيضًا.

أردت فقط أن أربط بسرعة بين طلبات الميزات المماثلة:

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

للأسف لم أتمكن من جعل ذلك يعمل!

نقطة جيدة! لقد فاتني الموضوعات الموجودة. لقد قمت بوضع علامة عليها ليتم دمجها جميعًا.

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

لديّ عدد قليل من المواقع التي تستخدم الرسائل الجماعية (Group Messages) بشكل مكثف، وهي طريقة رائعة لتمييز المواضيع “خارج المنتدى” بوضوح عن الفئات المفتوحة.

ومع ذلك، يمثل هذا نوعًا من صوامع البحث الوظيفية. في حين أنه من الممكن البحث عبر الرسائل والمنتدى الأوسع باستخدام in-all (انظر https://meta.discourse.org/t/searching-for-content-effectively/273328)، فإنه ليس من الممكن فعليًا الوصول إلى هذا من واجهة مستخدم البحث.

بالنسبة لحالة الاستخدام الخاصة بنا، سيكون من المفيد جدًا وجود ما يلي في واجهة مستخدم البحث المتقدم:

  1. خيار سهل الاستخدام للتحكم فيما إذا كانت الرسائل (و/أو الدردشة) مشمولة في البحث

    • يمكن أن يعمل هذا كخيار إضافي من القائمة المنسدلة هنا بشكل جيد:
      image

    • أو ربما يكون أسهل كأحد مربعات الاختيار هنا (حيث أن هذه ببساطة تُدرج البادئة في شريط البحث):
      image

  2. القدرة على تعيين إعداد افتراضي على مستوى الموقع لهذا الغرض

إعجابَين (2)

لطالما شعرت أن وجود مزيج من مربعات الاختيار والقائمة المنسدلة كان غريباً بالنسبة لي. لذلك “دمجت” كل شيء في قائمة منسدلة واحدة “متعددة التحديد” وتأكدت من أن مرشح “in:all” موجود أيضاً في القائمة.

4 إعجابات

@nathank طلب السحب (PR) أعلاه منشور على ميتا (meta)، ما رأيك؟

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

هذا تحسين رائع (ومعقول)!!!

الآن أحتاج فقط إلى معرفة كيفية جعله البحث الافتراضي لموقعي…

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

لتلخيص ما سبق، اكتمل البحث حسب الموضوع ورسائل البريد الإلكتروني (PMs)، وأصبح in:all الآن في الفلتر.
الجزء المتبقي لإكمال طلب الميزة هو القدرة على جعله البحث الافتراضي.

إعجابَين (2)