يوضح هذا الدليل كيفية إعداد فئات الشريط الجانبي الافتراضية وتطبيق التغييرات على المستخدمين الحاليين.
مستوى المستخدم المطلوب: المسؤول
يمكنك استخدام default navigation menu categories لتحديد الفئات التي تظهر افتراضيًا في الشريط الجانبي. كما يمكنك تطبيق التغييرات على المستخدمين الحاليين أو إعادة تطبيق الفئات التي قاموا بإزالتها من شريطهم الجانبي.
هذا الإعداد لا يفرض شريطًا جانبيًا متطابقًا لجميع المستخدمين. بل يقوم بتطبيق الإضافات والإزالات، بدلاً من استبدال قائمة الفئات بالكامل لكل مستخدم. يمكن أن تبقى الفئات الأخرى التي أضافها المستخدمون بأنفسهم كما هي.
تعيين الفئات الافتراضية
انتقل إلى “الإدارة” ← “جميع إعدادات الموقع”.
ابحث عن default navigation menu categories.
افتح المحدد واختر الفئات التي تريد عرضها افتراضيًا. لإزالة فئة، انقر على “×” بجانب اسمها.
يعتمد عدد المستخدمين المتأثرين على موقعك. قد لا تظهر الرسالة إذا لم يتأثر أي مستخدم حالي بالتغيير.
إعادة تطبيق الفئات الموجودة مسبقًا في القائمة الافتراضية
إذا أزال مستخدم فئة افتراضية من شريطه الجانبي، فإن حفظ نفس القائمة الافتراضية لن يعيدها. يتم تطبيق الإضافات والإزالات فقط.
لإعادة تطبيق الفئات المكونة:
دوّن الفئات التي تريد عرضها.
أزل جميع الفئات من default navigation menu categories، ثم احفظ. اختر “نعم” لتطبيق الإزالة على المستخدمين الحاليين عند الطلب.
اسمح وقتًا لاكتمال التحديث في الخلفية. قد يستغرق هذا عدة دقائق، أو وقتًا أطول على المواقع الكبيرة.
أضف الفئات التي تريد عرضها، ثم احفظ مرة أخرى. اختر “نعم” لتطبيق الإضافات على المستخدمين الحاليين عند الطلب.
اسمح باكتمال التحديث الثاني في الخلفية، ثم قم بتحديث الصفحة وتحقق من الشريط الجانبي.
هذا يقوم بإزالة والإضافة من جديد للفئات الافتراضية المكونة. لا يزيل فئة أضافها المستخدم بشكل شخصي ولم تكن مدرجة ضمن الإعداد.
فهم التغييرات التي تطرأ على المستخدمين الحاليين
عند اختيار “نعم”، يطبق Discourse الفرق بين الإعداد السابق والمحدّث:
التغيير في الإعداد
التأثير على المستخدمين الحاليين
إضافة فئة
يضيفها إلى قوائم الفئات في الشريط الجانبي للمستخدمين إذا لم تكن موجودة مسبقًا.
إزالة فئة
يزيلها من قوائم الفئات في الشريط الجانبي للمستخدمين، بما في ذلك المستخدمون الذين اختاروا تلك الفئة بأنفسهم.
ترك فئة دون تغيير
لا يعيد تطبيقها على المستخدمين الذين أزالوها سابقًا.
ترك فئة مضافة بشكل شخصي خارج الإعداد
لا يزيلها.
على سبيل المثال، لنفترض أن “عام” هي فئة افتراضية وقام مستخدم بإضافة “الدعم” بنفسه أيضًا. مسح “عام” وإعادة إضافتها لا يزيل “الدعم” إلا إذا كانت “الدعم” قد أُزيلت من الإعداد أيضًا.
التحقق من القيود
تنطبق أذونات الفئات لا يزال. اختيار فئة خاصة لا يمنح الوصول أو يجعلها مرئية للمستخدمين الذين لا يمكنهم الوصول إليها.
يمكن للمستخدمين تخصيص أشرطتهم الجانبية لاحقًا. هذا تحديث افتراضي وجماعي، وليس قائمة فئات مفروضة.
هذا ليس إعادة تعيين كاملة للشريط الجانبي. خطوات المسح وإعادة التطبيق لا تضمن قوائم فئات متطابقة لجميع المستخدمين.
ما الفرق بين إزالة الإعداد الافتراضي السابق وإضافته في خطوة واحدة، مقابل القيام بذلك في خطوتين مع فاصل زمني بينهما؟
ظننت للحظة أن هذه العملية ستعيد تعيين جميع التخصيصات الشخصية. لكن بناءً على اختباراتي، هذا ليس صحيحًا. إذا لم تكن فئة ما موجودة سابقًا في إعداد الشريط الجانبي الافتراضي وقام المستخدم بإضافتها بنفسه، فلن يتم حذفها لمجرد مسح الإعداد. يتم حذف ما تم تكوينه سابقًا في الإعداد فقط.
إضافة جميع الفئات إلى الإعداد (ويفضل عدم تجاوز هذا الإعداد للجميع)
ثم حذف جميع الفئات من الإعداد وتجاوز هذا الإعداد للجميع
(انتظر بضع دقائق؟)
إضافة فئات جديدة وتجاوز هذا الإعداد للجميع
يجب فصل الخطوتين 2 و4 هنا لأن الخطوة الأولى لم تُطبَّق على الجميع. يمكننا تطبيق الخطوة الأولى على الجميع، بحيث يكون لدى الجميع جميع الفئات في شريطهم الجانبي، وبعد بضع دقائق نحذف جميع الفئات التي لا نريدها في شريطهم الجانبي، لكن هذا قد يؤدي إلى تجربة أسوأ لبضع دقائق.
هل اختباراتي، التي تظهر أن إعداد مسح الفئات المضافة يدويًا لا يتم حذفه، غير صحيحة؟ هل هناك سبب آخر لفصل الخطوات؟ أود معرفة ذلك لأتمكن من تحديد المعلومات التي قد أريد إضافتها إلى Configuring the default sidebar for your users.
@Moin
طريقة عمل إعادة التعبئة (backfilling) هنا تختلف قليلاً عما قد يتوقعه المرء. نحن لا نقوم ببساطة بإعادة تعيين فئات شريط جانبي لجميع المستخدمين عند تحديث إعداد “فئات قائمة التنقل الافتراضية”. إليك ما نفعله:
إذا أضاف المسؤول بعض الفئات إلى الإعداد، فإن الفئات المضافة حديثًا فقط هي التي تُضاف إلى أشرطة المستخدمين الجانبية الذين لم تكن هذه الفئات مضبوطة لديهم مسبقًا.
إذا قمت بإزالة بعض الفئات من الإعداد، فإن هذه الفئات تُزال من أشرطة المستخدمين الجانبية.
لذا، فإن عملية إعادة التعبئة لا تفرض حالة الإعداد على جميع المستخدمين، بل تقوم بحساب الفرق (delta) بين القيم الموجودة حاليًا في الإعداد والقيم المضافة أو المحذوفة حديثًا.
السبب الرئيسي وراء هذا الإجراء هو الحفاظ على تفضيلات كل مستخدم على حدة.
هذا هو طلب الدمج (PR) الذي تم فيه إدخال هذا السلوك:
لقد حددنا طريقتين لتحقيق نفس الفئات لجميع المستخدمين:
إضافة الكل، تطبيقه تاريخيًا، إزالة البعض، تطبيقه تاريخيًا.
إزالة الكل، تطبيقه تاريخيًا، إضافة البعض، تطبيقه تاريخيًا.
في محاولة حديثة لتنفيذ ذلك لموقع كبير، لم تعمل الطريقة الأولى بشكل صحيح بينما نجحت الثانية. لذا قمت بتوثيق الطريقة الثانية.
إذا كان لديك وقت، يرجى تجربة الطريقتين مع مجموعة من المستخدمين لمعرفة ما إذا كان ذلك يعمل. إذا لزم الأمر، يمكنني كتابة استعلام SQL للتأكد من نجاح التحديث كما هو متوقع. يرجى إخباري برأيك.
لقد جربت الخطوات التي وصفتها في المنشور الأول مرة أخرى. ولا أزال ألاحظ نفس المشكلة: الفئة التي أضافها المستخدم إلى الشريط الجانبي الخاص به لم تُحذف، لذا فإن النتيجة ليست أن جميع المستخدمين لديهم نفس الفئات في أشرطةهم الجانبية.
8. تفقدت شريطي الجانبي ووجدت أن category4 فقط، الذي تمت إضافته يدويًا، موجود هناك (كما أن الرابط إلى إعداد الموقع في الأسفل يشير إلى أن إعداد الموقع فارغ)
النتيجة المتوقعة بناءً على عنوان هذا الدليل: أن يكون لدى جميع المستخدمين نفس الفئات في أشرطةهم الجانبية، مما يعني تلك الموجودة في الإعداد ولا شيء آخر. النتيجة الفعلية: لا يزال category4 موجودًا في الشريط الجانبي، بينما هو غير موجود في الشريط الجانبي للمستخدمين الذين لم يضيفوه يدويًا.
في أي خطوة تتوقع أن يتم إزالة الفئة التي أضافها المستخدم (في مثالتي category4) إلى شريطه الجانبي للحصول على نتيجة أن جميع المستخدمين لديهم نفس الفئات في أشرطةهم الجانبية؟
بناءً على ما قلته هنا، لا أتوقع أن يتم إزالتها، لأن الفئة لم تُحذف من الإعداد لأنها لم تكن موجودة فيه. لكنك تقول إنك استخدمت هذه الخطوات لفرض نفس الفئات لجميع المستخدمين.
إذا أضفت جميع الفئات (الطريقة 1)، لكانت category4 قد أضيفت ثم أزيلت، لذا كنت أتوقع أن تختفي. هذا هو المكان الذي أفهم فيه ما يحدث. لكن دليلك يقول إنه يجب علي استخدام الطريقة 2، لذا أتساءل عما فاتني في فهمي واختباراتي.