如果用户未登录,Wordpress重定向到登录页面

时间:2020-10-08 15:10:01

标签: wordpress wordpress-theming custom-wordpress-pages

我需要强迫用户登录才能看到浏览我的网站。对于新用户,只应允许访问my-account页面,这是我的登录URL,即example.org/my-account

以下是我到目前为止所做的

 add_action('wp','force_register' ); 
 function force_register() {
    $loggedin = is_user_logged_in();
    $pagename = get_query_var('pagename'); //get current page name

    if(strcmp("my-account",$pagename) != 0){ //if the user is looking at any other page other than my-account page
        if(!$loggedin){ //if the user is not logged in
            wp_safe_redirect( "/my-account", 302 ); //redirect to the login page
            exit; 

        }

}

浏览器无法重定向,并抱怨重定向过多

我想念什么?

1 个答案:

答案 0 :(得分:0)

在WordPress执行任何路由,处理或处理之前。它在main()WP方法中运行,其中$ query_args传递给parse_request()以及设置send_headers(),query_posts(),handle_404()和register_globals()时。这是由您的问题引起的,您可以使用init代替wp hook。 more about wp hook.