البحث عن علامة تبويب مع مربع اختيار لا يعرض النتائج على الهاتف المحمول

:warning: ملاحظة أغسطس 2023: تحتوي الأمثلة السابقة في هذا الموضوع على إشارات إلى وسوم لم تعد موجودة، غير أن مشكلة النتائج الفارغة لا تزال قائمة.

إذا زرت الرابط https://meta.discourse.org/tags/c/theme/61/theme-component على الهاتف المحمول، ونقرت على أيقونة عدسة التكبير، وبحثت مثلاً عن كلمة “topic” (موضوع)، ثم نقرت على خانة الاختيار الخاصة بـ “البحث في الوسم Customization > Theme component”، ستواجه مشكلتين.
من ناحية، تحتاج إلى نقر خانة الاختيار مرتين حتى يتم تحديدها. ومن ناحية أخرى، لا تظهر أي نتائج بحث بعد النقر على خانة الاختيار مرة أو مرتين، في حين تظهر نتائج كثيرة إذا استخدمت البحث على سطح المكتب.

البحث على الهاتف المحمول دون لمس خانة الاختيار


https://meta.discourse.org/search?context=tag&context_id=theme-component&q=Topic&skip_context=true

البحث على الهاتف المحمول مع نقر خانة الاختيار مرة واحدة


https://meta.discourse.org/search?context=tag&context_id=theme-component&q=Topic&skip_context=false

البحث على الهاتف المحمول مع نقر خانة الاختيار مرتين


https://meta.discourse.org/search?context=tag&context_id=theme-component&q=Topic&skip_context=false

البحث باستخدام عرض سطح المكتب


https://meta.discourse.org/search?q=topic%20%23theme-component

أعلم أنني يمكنني كتابة Customization > Theme component في حقل البحث للحصول على نتائج على الهاتف المحمول، لكنني أعتقد أن هذا ليس المقصود من تقديم خانة الاختيار.

3 إعجابات

يا له من اكتشاف رائع يا @moin. أعتقد أنك ربما اكتشفت خللين. :slight_smile:

  1. خانة الاختيار لا تعمل على الفور، و
  2. تحديد نطاق البحث لعلامة ينشئ مسارًا تخدمه Discourse برمز 403

خانة الاختيار لا يتم تحديدها

في الهاتف المحمول، يضيف رابط البحث “context” إلى عنوان URL، مما يكشف عن خانة الاختيار التي يمكن تبديلها المعنية. في هذه الحالة، عنوان URL الذي ننظر إليه هو https://meta.discourse.org/search?context=tag&context_id=theme-component&skip_context=true.

عند تبديل خانة الاختيار، نقوم بتغيير استعلام البحث حيث يتغير skip_context من true إلى false والعودة مرة أخرى. هذا يعني أيضًا أنه قد يمكنك إنشاء عنوان URL حيث يتم تحديد المربع افتراضيًا، مثل <https://meta.discourse.org/search?context=category&context_id=1&skip_context=false>. هذا مهم، لأنني لاحظت سلوكًا مختلفًا بين الحالتين عند تحميلهما.

skip_context=true

الافتراضي في عرض الهاتف المحمول، ولن يتم تحديد المربع. التفاعل مع خانة الاختيار، باللمس أو لوحة المفاتيح، يغير عنوان URL إلى skip_context=false، ولكنه لا يحدد خانة الاختيار. النقر مرة أخرى سيحددها، مع الاحتفاظ بـ “false” في عنوان URL.

بعد ذلك، يمكن تبديلها ذهابًا وإيابًا، مع تغييرات عنوان URL المقابلة كما هو متوقع.

skip_context=false

عند تحميل البحث، يتم تحديد خانة الاختيار، والتفاعل معها يعمل كما هو متوقع: كل تفاعل يغير خانة الاختيار وعنوان URL.


لقد لاحظت بشكل منفصل أن استخدام خانات الاختيار هذه يتسبب أيضًا في فقدان التركيز على الصفحة، بغض النظر عن قيمة skip_context؛ آمل أن يكون نفس الشيء هو السبب في مشكلة النقر المزدوج لدينا. :slight_smile:

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

حسنًا، سأرى ما يمكنني شرحه حول عدم تحديد نطاق العلامات في رد متابعة، بحيث يسهل فصله إذا لزم الأمر.

4 إعجابات

نطاق الوسوم في نتائج البحث يعيد رمز 403

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

باستخدام #customization:theme و #customization:theme-component كمثال:

عندما نستخدم سياق البحث للوسوم، يبدو طلبنا كالتالي: https://meta.discourse.org/search?q=topic&page=1&search_context[type]=tag&search_context[id]=theme-component، والذي يعيد رمز 403.

عندما نستخدم سياق البحث للفئات، يبدو طلبنا كالتالي: https://meta.discourse.org/search?q=topic&page=1&search_context[type]=category&search_context[id]=61، والذي يعيد النتائج كما هو متوقع.

وبديلًا عن ذلك، إذا اخترنا وسمًا من عوامل التصفية في البحث المتقدم، يبدو طلبنا كالتالي: https://meta.discourse.org/search?q=tags:theme-component&page=1 ويعيد النتائج التي تحتوي على ذلك الوسم.

أستطيع إعادة إنتاج المسار &search_context[type]=tag&search_context[id]=theme-component الذي يعيد رمز 403 في الوضع الآمن (safe-mode) أيضًا.

هل هناك أنواع أخرى من search_context؟ لقد أطلعت على الشفرة البرمجية ولكن لم أتمكن من التحديد؛ إذا كان الأمر كذلك، يمكننا اختبارها أيضًا.

3 إعجابات

متابعةً للنقاش من Discourse Subscriptions - allow subscription of predetermined length:

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

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

يمكنني تأكيد ذلك. حاولت للتو البحث من علامة التصنيف post-voting مع تحديد الخيار، ولم يتمكن من العثور على أي نتائج ( @mention أو أي كلمة رئيسية أخرى عادية)

Android/Chrome

(لم أتحقق من سطح المكتب بعد) لقد تحققت من سطح المكتب ويعمل بشكل جيد.

هل هذه إحدى المشكلات التي أبلغت عنها هنا؟

إعجابَين (2)

لم تكن لدي مشكلة في تحديد المربع، ولكن يبدو أن عدم وجود نتائج هو نفس المشكلة.

لقد قمت بدمج المواضيع. :+1: (وقمت بتعديل OP قليلاً).

فقط لتدوين ملاحظة هنا أيضًا؛ لم تعد علامات المثال في OP موجودة، على الرغم من أن المشكلة المتعلقة بنتائج البحث الفارغة على الهاتف المحمول التي أظهروها لا تزال قائمة.

خطواتي الأساسية جدًا:

  • على الهاتف المحمول، انتقل إلى قائمة مواضيع post-voting
  • افتح البحث وحدد مربع الاختيار Search the #post_voting tag
  • أدخل شيئًا من شأنه بالتأكيد أن يعطي نتيجة (على سبيل المثال، ‘comment’ أو ‘@JammyDodger’)
  • اضغط على ‘Search’

النتيجة: ‘No results found

النتيجة المتوقعة: العثور على الأشياء

إعجابَين (2)

هذه بالفعل مشكلة، شكراً على التبليغ يا رفاق. يجب إصلاحها عند دمج طلب السحب هذا: FIX: Search by tag context was broken by pmusaraj · Pull Request #23006 · discourse/discourse · GitHub

إعجابَين (2)

تم دمج هذا الآن :partying_face:

3 إعجابات

تم إغلاق هذا الموضوع تلقائيًا بعد يومين. لم يعد يُسمح بالردود الجديدة.