تسجيل الدخول عبر WordPress SSO و Patreon

حسناً، لقد وجدت حلاً بديلاً يُصلح مشكلة تسجيل الدخول عبر Patreon. يرجى الاطلاع على التعليمات أدناه. :slight_smile:

ستحتاج إلى:

  • أي إضافة توفر اختصارًا قصيرًا لعرض نموذج تسجيل الدخول (لقد قمت بتثبيت إضافة WooCommerce على موقعي، لذا استخدمت الاختصار القصير [woocommerce_my_account]، الذي يقوم بذلك بالضبط للمستخدمين غير المسجلين).
  • إضافة Members، التي توفر الاختصارات القصيرة [members_logged_in] و [members_not_logged_in] لإخفاء/إظهار المحتوى بناءً على ما إذا كان المستخدم مسجلاً للدخول أم لا. يمكنك استخدام أي إضافة أخرى توفر وظيفة مماثلة للاختصارات القصيرة.
  • إضافة Shortcode Redirect.

الفكرة هي إنشاء صفحة خاصة تعرض نموذج تسجيل الدخول (وزر تسجيل الدخول عبر Patreon) للمستخدمين غير المسجلين. أما إذا كان المستخدم مسجلاً للدخول، فيجب إعادة توجيهه إلى عنوان URL التالي: https://community.morevnaproject.org/session/sso?return_path=%2F.
(بالتأكيد، ستريد استبدال “community.morevnaproject.org” بنطاقك الخاص).

تحتوي صفحتي الخاصة لتسجيل الدخول على المحتوى التالي:

[members_not_logged_in]
   [woocommerce_my_account]
   [patreon_login_button]
[/members_not_logged_in]
[members_logged_in]
   [redirect url='https://community.morevnaproject.org/session/sso?return_path=%2F' sec='0']
[/members_logged_in]

(يمكنك مشاهدته يعمل هنا - Log In / Register — Morevna Project)

بعد ذلك، كل ما عليك فعله هو تكوين إضافة WP-Discourse لاستخدام تلك الصفحة في عملية SSO -

عندما يضغط المستخدم على زر “تسجيل الدخول” في Discourse، يتم إعادة توجيهه إلى صفحة WordPress الخاصة بي. وبما أن المستخدم غير مسجل للدخول، يتم عرض نموذج تسجيل الدخول. إذا ضغط المستخدم على زر “تسجيل الدخول عبر Patreon”، فسيتم إعادة توجيهه إلى Patreon للحصول على التفويض. بعد التفويض الناجح، يتم إعادة توجيهه مرة أخرى إلى صفحتي الخاصة. وبما أن المستخدم مسجل الآن في الدخول، يتم تفعيل اختصار “redirect” القصير:

[redirect url='https://community.morevnaproject.org/session/sso?return_path=%2F' sec='0']

… ويتم إعادة توجيه المستخدم بنجاح إلى منتديات Discourse.

الجزء session/sso?return_path=%2F في نهاية عنوان URL مطلوب، وإلا لن يتعرف Discourse على المستخدم كمسجل في الدخول بعد إعادة التوجيه.

هذا كل شيء! آمل أن يساعد هذا المستخدمين الآخرين الذين يريدون استخدام SSO الخاص بـ WordPress مع تسجيل الدخول عبر Patreon على مواقعهم الإلكترونية. :slight_smile: