如前所述,我已经集成了自定义登录表单here 并通过快捷码将此自定义登录表单嵌入到WordPress页面[dm_login_form]
.
之后,我有了集成的访问控制插件here 这允许我重定向用户到登录页面,如果没有登录。
我需要将用户重定向到我的自定义登录页面post/page
由访问non-authenticated
使用者如果我提供自定义登录页,它将进入重定向循环URL
.
对于管理员身份验证,我使用默认值wp-login.php
其他用户使用自定义登录页面登录时的URLURL
.
函数中的代码。用于重定向的php
add_action(\'template_redirect\', \'redirect_user\');
function redirect_user(){
global $current_user;
if (!is_user_logged_in()){
$return_url = site_url().\'/login\';
wp_redirect($return_url);
exit();
}
}
如果用户没有登录,我只需要将其重定向到我的登录页面URL,然后尝试访问任何页面/帖子。如何防止此重定向循环?
谢谢
最合适的回答,由SO网友:Robert hue 整理而成
以下是将非用户重定向到登录页面的函数。
function redirect_user() {
if ( ! is_user_logged_in() && ! is_page( \'login\' ) ) {
$return_url = esc_url( home_url( \'/login/\' ) );
wp_redirect( $return_url );
exit;
}
}
add_action( \'template_redirect\', \'redirect_user\' );