في الآونة الأخيرة، شهدنا 16 حالة حيث تم ربط مستخدمين من WordPress بحساب مستخدم خاطئ في Discourse.
عند الوصول إلى ملف المستخدم كمسؤول، يمكنك رؤية أن سجل SSO يحتوي على تفاصيل المستخدم الخاطئ. احذف السجل، وفي المرة التالية التي يسجل فيها المستخدم الدخول عبر WordPress، سيحصل على الوصول إلى ملف المستخدم الصحيح في Discourse.
لم يكن متطابقًا بالنسبة للمستخدمين الذين تم نقلهم. كان معرف المستخدم والبريد الإلكتروني الخاصين بالشخص الذي قام بتسجيل الدخول، لكنهما كانا مرتبطين بالملف الشخصي الخاطئ.
السبب المحتمل هنا هو أنه في بعض الحالات، قد تكون هناك بريد إلكتروني واحد مرتبط بحسابات مستخدمين متعددة في مثيل ووردبريس الخاص بك. هل تعتقد أن هذا ممكن؟
على سبيل المثال، هل كان لديك عملية تسجيل مستخدم مخصصة في ووردبريس في أي وقت (عملية لا تتطلب من المستخدم تأكيد بريده الإلكتروني قبل تسجيل الدخول)، أو قمت باستيراد مستخدمين إلى ووردبريس في أي نقطة؟
هل هذه مشكلة مستمرة أم أنها تقتصر على مجموعة فرعية من المستخدمين؟ هل هذه حسابات المستخدمين قديمة أم جديدة؟
يتم إنشاء حسابات المستخدمين من خلال عملية شراء تمت عبر WooCommerce. كان Woo سابقًا على موقع فرعي، ولكن تم دمج الموقعين. شاركت الموقعان جدول مستخدمين واحد، لذا يجب أن تظل معرفات المستخدمين ثابتة، على الأقل نظريًا.
كان الوصول إلى الموقع، قبل وقتي، خاضعًا للتحكم عبر MemberMouse. ومنذ ذلك الحين - قبل حوالي 5 سنوات - تم التحكم في الوصول عبر iMember360، ثم استُبدل مؤخرًا بـ Memberium. كلاهما إضافات متطابقة تقريبًا تتكامل مع نظام إدارة علاقات العملاء InfusionSoft، وتسمح بالوصول إلى صفحات مختلفة بناءً على البيانات المستخرجة من نظام إدارة علاقات العملاء.
تتطلب طريقة عمل هذه الإضافات عنوان بريد إلكتروني فريد، مما يجعل من المستحيل استخدام نفس عنوان البريد الإلكتروني في مستخدمين متعددين.
هذه مشكلة مستمرة، لكنها تبدو محدودة بعدد قليل جدًا من المستخدمين. لقد حدثت لمستخدمين “قدامى”، وحدثت مؤخرًا لحساب عمره 5 أيام فقط، لذا فهي ليست مشكلة تقتصر على المستخدمين الجدد فقط.
هذه مسألة شائكة. لدي بعض النظريات حول كيفية تعيين require_activation إلى true في إعداداتك، مما يتسبب لاحقًا في هذه المشكلة، لكن هناك عدة نظريات للاختيار من بينها.
أنا أعمل حاليًا على إكمال مجموعة جديدة من الاختبارات لإضافة WP Discourse، وأضيف سجلات إلى وظيفة SSO. أنا أكتب بعض السجلات الإضافية التي يجب أن تلتقط سبب هذه المشكلة. ستُدمج هذه الأعمال في الإضافة خلال الشهر القادم، لذا ينبغي أن نتمكن من الحصول على إجابة أكثر وضوحًا قريبًا.