كيفية تعيين فئات الشريط الجانبي نفسها لجميع المستخدمين

في بعض الأحيان، يحتاج مسؤولو الموقع إلى التأكد من أن جميع المستخدمين يرون نفس مجموعة الفئات في الشريط الجانبي. إليك كيفية القيام بذلك:

  • قم بإزالة جميع الفئات من default navigation menu categories ثم احفظ التغيير. تأكد من تطبيق التغيير تاريخيًا عند المطالبة بذلك.
  • انتظر بضع دقائق.
  • أضف جميع الفئات التي تريد عرضها لجميع المستخدمين في default navigation menu categories. مرة أخرى، تأكد من تطبيق التغيير تاريخيًا عند المطالبة بذلك.

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

ملاحظة: هذا الإعداد لا يجعل الفئات الخاصة تظهر للمستخدمين الذين لا يملكون صلاحية الوصول إليها.

5 إعجابات

ما الفرق بين إزالة الإعداد الافتراضي السابق وإضافته في خطوة واحدة، مقابل القيام بذلك في خطوتين مع فاصل زمني بينهما؟

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

لذا، لجعل الشريط الجانبي متطابقًا للجميع، ستحتاج إلى:

  • إضافة جميع الفئات إلى الإعداد (ويفضل عدم تجاوز هذا الإعداد للجميع)
  • ثم حذف جميع الفئات من الإعداد وتجاوز هذا الإعداد للجميع
  • (انتظر بضع دقائق؟)
  • إضافة فئات جديدة وتجاوز هذا الإعداد للجميع

يجب فصل الخطوتين 2 و4 هنا لأن الخطوة الأولى لم تُطبَّق على الجميع. يمكننا تطبيق الخطوة الأولى على الجميع، بحيث يكون لدى الجميع جميع الفئات في شريطهم الجانبي، وبعد بضع دقائق نحذف جميع الفئات التي لا نريدها في شريطهم الجانبي، لكن هذا قد يؤدي إلى تجربة أسوأ لبضع دقائق.

هل اختباراتي، التي تظهر أن إعداد مسح الفئات المضافة يدويًا لا يتم حذفه، غير صحيحة؟ هل هناك سبب آخر لفصل الخطوات؟ أود معرفة ذلك لأتمكن من تحديد المعلومات التي قد أريد إضافتها إلى Configuring the default sidebar for your users.

3 إعجابات

@Moin
طريقة عمل إعادة التعبئة (backfilling) هنا تختلف قليلاً عما قد يتوقعه المرء. نحن لا نقوم ببساطة بإعادة تعيين فئات شريط جانبي لجميع المستخدمين عند تحديث إعداد “فئات قائمة التنقل الافتراضية”. إليك ما نفعله:

  • إذا أضاف المسؤول بعض الفئات إلى الإعداد، فإن الفئات المضافة حديثًا فقط هي التي تُضاف إلى أشرطة المستخدمين الجانبية الذين لم تكن هذه الفئات مضبوطة لديهم مسبقًا.
  • إذا قمت بإزالة بعض الفئات من الإعداد، فإن هذه الفئات تُزال من أشرطة المستخدمين الجانبية.

لذا، فإن عملية إعادة التعبئة لا تفرض حالة الإعداد على جميع المستخدمين، بل تقوم بحساب الفرق (delta) بين القيم الموجودة حاليًا في الإعداد والقيم المضافة أو المحذوفة حديثًا.

السبب الرئيسي وراء هذا الإجراء هو الحفاظ على تفضيلات كل مستخدم على حدة.

هذا هو طلب الدمج (PR) الذي تم فيه إدخال هذا السلوك:

لقد حددنا طريقتين لتحقيق نفس الفئات لجميع المستخدمين:

  1. إضافة الكل، تطبيقه تاريخيًا، إزالة البعض، تطبيقه تاريخيًا.
  2. إزالة الكل، تطبيقه تاريخيًا، إضافة البعض، تطبيقه تاريخيًا.

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

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

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

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

خطوات تكرار المشكلة بالتفصيل
  1. أنشأت منتدى جديدًا تمامًا
  2. أنشأت 5 فئات (category1, category2, category3, category4, category5)
  3. أضفت category4 إلى شريطي الجانبي باستخدام خيار “تعديل فئات الشريط الجانبي”

  4. تمت إضافة الفئة إلى شريطي الجانبي
  5. نظرت إلى إعداد الموقع default_navigation_menu_categories
  6. كما ذكرت في الدليل، قمت بإزالة جميع الفئات


وطبقت التغيير على الجميع

7. الآن كان الإعداد فارغًا

8. تفقدت شريطي الجانبي ووجدت أن category4 فقط، الذي تمت إضافته يدويًا، موجود هناك (كما أن الرابط إلى إعداد الموقع في الأسفل يشير إلى أن إعداد الموقع فارغ)

9. انتظرت حوالي 45 دقيقة وأضفت category1 و category2 و category3 إلى الإعداد

وطبقت التغيير على جميع المستخدمين

النتيجة المتوقعة بناءً على عنوان هذا الدليل: أن يكون لدى جميع المستخدمين نفس الفئات في أشرطةهم الجانبية، مما يعني تلك الموجودة في الإعداد ولا شيء آخر.
النتيجة الفعلية: لا يزال category4 موجودًا في الشريط الجانبي، بينما هو غير موجود في الشريط الجانبي للمستخدمين الذين لم يضيفوه يدويًا.

في أي خطوة تتوقع أن يتم إزالة الفئة التي أضافها المستخدم (في مثالتي category4) إلى شريطه الجانبي للحصول على نتيجة أن جميع المستخدمين لديهم نفس الفئات في أشرطةهم الجانبية؟

بناءً على ما قلته هنا، لا أتوقع أن يتم إزالتها، لأن الفئة لم تُحذف من الإعداد لأنها لم تكن موجودة فيه. لكنك تقول إنك استخدمت هذه الخطوات لفرض نفس الفئات لجميع المستخدمين.
إذا أضفت جميع الفئات (الطريقة 1)، لكانت category4 قد أضيفت ثم أزيلت، لذا كنت أتوقع أن تختفي. هذا هو المكان الذي أفهم فيه ما يحدث. لكن دليلك يقول إنه يجب علي استخدام الطريقة 2، لذا أتساءل عما فاتني في فهمي واختباراتي.

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