【问题标题】:Redirect user if not specific user如果不是特定用户,则重定向用户
【发布时间】:2019-06-27 01:10:18
【问题描述】:

我想保护 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() );
    }
 }
}
}

【问题讨论】:

  • 你的问题是什么?给定的代码有什么不工作的地方吗?

标签: php wordpress redirect wp-admin


【解决方案1】:

我认为我的代码是正确的:

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;
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-07
    • 1970-01-01
    • 2012-05-16
    • 2013-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多