嘿,我们目前除了 redirect_to 参数外,没有其他实施计划。
“将用户重定向回他们原本所在的页面”看似简单,实则复杂得多,存在不少边缘情况。如果我们将其作为核心功能添加,就等于承诺支持所有这些边缘情况
正如您可能想象的那样,WordPress 网站的配置方式多种多样。
我之前已经给您提供了一些提示,但为了进一步帮助您,您或您的开发人员可以这样做:扩展现有的短代码,使其自动将 route_to 设置为当前网站 URL。然后,您可以针对自己特定的网站处理相关的边缘情况。
在 functions.php 中:
use WPDiscourse\\SSOClient\\SSOClientShortcode;
function render_discourse_sso_client_link_with_redirect() {
$sso = new SSOClientShortcode();
$protocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http");
$current_url = "$protocol://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$options = array(
"redirect" => $current_url,
"login" => "Login"
);
return $sso->discourse_sso_client_shortcode( $options );
}
add_shortcode( 'discourse_sso_client_link_with_redirect', 'render_discourse_sso_client_link_with_redirect' );
然后在您的模板中使用短代码 [discourse_sso_client_link_with_redirect]。