重定向用户(如果不是特定用户)

时间:2019-06-27 01:10:18

标签: php wordpress redirect wp-admin

我想保护wp-admin中备份插件的配置页面。

我的用户ID =1。如果用户不是1,则重定向到wp-admin之外。

备份页面是这样的:http://www.mysite.com.br/wp-admin/options-general.php?page=updraftplus

我写了这段代码,但是我没有太多经验,请原谅我,因为肯定有错误

*我想将此代码放在functions.php中,我认为这是正确的地方。

add_filter( 'parse_query', 'redirect_user' );

function redirect_user($query) {
  $user_id = get_current_user_id();

if (strlen($user_id) <> 1)
global $pagenow,$post_type;
 if (is_admin() && $pagenow=='options-general.php' && $post_type =='page') {
    if ($post_type == "updraftplus") {
        wp_redirect( home_url() );
    }
 }
}
}

1 个答案:

答案 0 :(得分:0)

我认为我的代码正确:

add_action( 'admin_init', 'redirect_user_backup' );

function redirect_user_backup() {
global $pagenow;
$user_id = get_current_user_id();

    if( $pagenow == 'options-general.php' && isset( $_GET['page'] ) && $_GET['page'] == 'updraftplus' ){
        if ($user_id <> 1) {
            wp_redirect( admin_url( '/index.php' ), 301 );
            exit;
        }
    }
}