Redirect User to login page

时间:2015-01-20 作者:Slimshadddyyy

嗯,我是WP的新手,这个问题听起来可能重复,但即使尝试了几天,我也无法做到这一点。

我已经在我的WP网站中集成了一个自定义登录和注册表单,它与通常的WP登录和注册表单不同。

我需要执行以下操作

如果直接访问任何页面URL,请将用户重定向到登录页面。如果直接访问登录/注册URL,请将用户重定向到主页如果用户在登录后试图访问登录/注册URL,我会使用以下代码将用户重定向到主页

function checkUser(){

$user = wp_get_current_user();
if ( empty( $user->ID ) )
        return false;

    return true;   
}


function __construct(){
    add_action(\'init\', array($this, \'checkUser\'));
}
即使我使用wp_redirect(site_url());exit;; 这似乎不起作用,它进入了无限循环。

谢谢

1 个回复
最合适的回答,由SO网友:ifdion 整理而成

这是我以前的项目。该函数连接到template_redirect 行动函数内部有2个条件。第一个是将登录用户重定向到登录页面以外的位置。另一个是将未登录的用户重定向到登录页面。

// add a redirect for logged out user
add_action(\'template_redirect\', \'redirect_user\');

function redirect_user(){
    global $current_user;
    if (is_page(\'login-page-for-non-logged-in-user\') && is_user_logged_in()){
        $return_url = get_bloginfo(\'url\');
        wp_redirect($return_url);
    }
    // this part is untested
    if (!is_page(\'login-page-for-non-logged-in-user\') && !is_user_logged_in()){
        $return_url = get_bloginfo(\'url\');
        wp_redirect($return_url);
    }
    // end of untested part
}

结束

相关推荐

Redirect first time comments

因此,我想在我的注释表单中添加一个注释重定向代码。我知道我这里有这个部分:<input name=\"redirect_to\" type=\"hidden\" value=\"http://domain.com/thank-you\" /> 所以我要做的是用if-else 看看这是否是他们的第一条评论:if ( $FirstTimeComment = true ) : ?> <input name=\"redirect_to\" type=\"hidde