يستخدم موقعي مزود DiscourseConnect، لذا يقوم ووردبريس بإدارة تسجيلات الدخول إلى Discourse.
عندما يقوم مستخدم بالتسجيل في ووردبريس، أرغب في إنشاء مستخدم Discourse له على الفور وإرسال بريد إلكتروني لتنشيط Discourse إليه. لكن هذا لا يبدو أنه يحدث.
لقد تحققت من خيار “مزامنة بيانات المستخدم” في إعدادات ووردبريس.
يبدو أن الوصف يقول إنه سيتم إنشاء مستخدم Discourse عندما يسجلون الدخول إلى ووردبريس. لكنني لا أرى ذلك يحدث. لا يتم إنشاء مستخدم Discourse إلا عندما يزورون موقع Discourse.
هل تكاملي لا يعمل بشكل صحيح؟ أم أنني أسيء فهم هذا الوصف؟
أفهم الآن. يقوم بإنشاء مستخدم Discourse جديد عندما يقومون “بتسجيل الدخول” إلى Wordpress. لا يقوم بإنشاء مستخدم جديد عندما يقومون “بالتسجيل” في Wordpress. يمكن لمستخدمينا التسجيل بأنفسهم وعند التسجيل، يعتبرون مسجلين الدخول على الفور. لذلك في تلك المرحلة، يكونون مسجلين الدخول ولكن ليس لديهم مستخدم Discourse.
إذا قاموا بتسجيل الخروج من WP وتسجيل الدخول مرة أخرى إلى WP، فسيتم إنشاء مستخدم Discourse. لقد تحققت من ذلك للتو.
نحن لا نطلب التحقق من صحة رسائل البريد الإلكتروني في Wordpress لأنه موقع WooCommerce ويقوم بتسجيلهم تلقائيًا إذا قاموا بإجراء عملية شراء أثناء عدم تسجيل الدخول. في المرة الأولى التي يزورون فيها Discourse بعد التسجيل، يتلقون رسالة البريد الإلكتروني للتحقق من العنوان من Discourse.
المستخدمون الذين يواجهون مشكلة هم أولئك الذين يقومون بما يلي:
التسجيل في WP ولكن لا يقومون بتسجيل الخروج وتسجيل الدخول مرة أخرى
لا يزورون Discourse أبدًا (وهو موقع الدعم الخاص بنا للموقع التجاري الإلكتروني)
يعامل Wordpress/WooCommerce التسجيل الذاتي كتسجيل دخول - يعتبرون مسجلين الدخول فورًا بعد التسجيل. هل هناك أي طريقة لإنشاء مستخدم Discourse عند التسجيل الذاتي وليس فقط عند تسجيل الخروج وتسجيل الدخول مرة أخرى؟
مرحباً رايان، أنت على حق في أن المكون الإضافي ينشئ مستخدمًا بعد تسجيل الدخول. على وجه التحديد، يستخدم المكون الإضافي خطاف wp_login. يوجد أيضًا خطاف user_register في ووردبريس، ومع ذلك فإن السبب في أن المكون الإضافي لا يستخدم هذا هو أنه يتم تشغيله فورًا بعد إدراج سجل في قاعدة بيانات ووردبريس، بغض النظر عما إذا كانت تفاصيلهم (خاصة بريدهم الإلكتروني) قد تم التحقق منها.
لأكون جريئًا بعض الشيء، أعتقد أن السؤال هنا قد يكون لماذا لا يقوم WooCommerce بتشغيل خطاف wp_login إذا كان الأمر كذلك ولكن، والأكثر فائدة، هناك على الأرجح خطاف أو فلتر آخر يقوم WooCommerce بتشغيله فورًا بعد التسجيل وتسجيل الدخول، إذا كان هذا هو ما يفعله بالفعل.
السبب في أننا لم نقم ببناء هذا في المكون الإضافي (حتى الآن)، هو أنه، كما قد ترى من حالتك، هناك العديد من الطرق المختلفة التي يمكن بها إنشاء/تسجيل/تسجيل دخول المستخدمين في ووردبريس.
لكن دعنا نرى ما إذا كان بإمكاننا جعل حالتك المحددة تعمل. أولاً، نحتاج إلى العثور على خطاف يتم تشغيله فورًا بعد حدوث التسجيل/تسجيل الدخول التلقائي الخاص بك. هل يمكنك تأكيد كيفية إعداد ذلك بالضبط؟ أي، بالضبط ما هو التدفق الذي تستخدمه. كلما كان ذلك أكثر تحديدًا كان أفضل، على سبيل المثال، أي وثائق استخدمتها.
أشك في أن WooCommerce هو ما يسبب الارتباك. يبدو أن تسجيل الدخول تلقائيًا بعد التسجيل هي ميزة WooCommerce، وليست ميزة WordPress. وهم لا يقومون بتشغيل إجراءات تسجيل الدخول عن قصد.
يمكنني البحث عن خطاف WooCommerce مناسب لاستخدامه لهذا الغرض. هل هناك وظيفة WP Discourse يمكنني استدعاؤها أو خطاف يمكنني تشغيله لإنشاء مستخدم Discourse إذا وجدت خطاف WooCommerce المناسب؟