特定用户角色的Wordpress仪表板重定向

问题描述

我已成功使用此代码 /wp-admin/index.PHP (WP仪表板)重定向到另一个特定的管理页面。 我现在想将此操作限制为特定的用户角色(即作者)。

add_action( 'admin_init',function () {

    global $pageNow;

    # Check current admin page.
    if ( $pageNow == 'index.PHP' ) {

        wp_redirect( admin_url( '/admin.PHP?page=wuapc-page-376' ) );
        exit;
    }
} );

解决方法

使用wp_get_current_user

add_action( 'admin_init',function () {

    global $pagenow;
    $user = wp_get_current_user();

    # Check current admin page.
    if ( $pagenow == 'index.php' && in_array('author',$user->roles)) {

        wp_redirect( admin_url( '/admin.php?page=wuapc-page-376' ) );
        exit;
    }
} );