WordPress SSO 提供商 - 空白页面

是的。在 Discourse 上点击“登录”按钮后,用户将被重定向到您在 Discourse 中设置的 sso url。这应该是您网站的首页 URL。

如果您尚未登录 WordPress,SSO 代码会将您重定向到您网站的登录 URL。该 URL 默认为 /wp-login.php。您可以通过设置“登录页面路径”选项来覆盖此设置。登录后,用户应被重定向回您网站的首页 URL,同时保留从 Discourse 发送的查询参数。

如果当您尚未登录 WordPress 时此功能无法正常工作,问题可能是您的网站设置了登录重定向,覆盖了 WP Discourse SSO 代码设置的登录重定向。另一种可能性是,您的网站登录代码会剥离 Discourse 设置的查询参数。

您可以使用 wpdc_sso_params 过滤器来覆盖插件设置的用户名:

add_filter( 'wpdc_sso_params', 'wpdc_custom_sso_params', 10, 2 );
function wpdc_custom_sso_params( $params, $user ) {
    $params['username'] = $user->user_nicename;

    return $params;
}

有关详细运作机制,请参阅 https://github.com/discourse/wp-discourse/blob/master/lib/sso-provider/discourse-sso.php。