如何解决根据用户角色进行重定向
在我的网站中,我想要自定义用户角色。我创建了用户角色,但是当我相应地进行重定向时,这些角色不起作用。只有工作管理员角色和订阅者角色。自定义用户角色不起作用。这是我的代码。有人能帮我解决这个问题吗。
function disable_dashboard_access() {
if( is_admin() && !defined('DOING_AJAX') ) {
if ( is_user_logged_in() && ( current_user_can('upload_users') || current_user_can('upload_videos') ) ) {
wp_redirect(home_url('/dashboard/'));
exit;
} elseif ( is_user_logged_in() && ( current_user_can('subscriber') || current_user_can('contributor') ) ) {
wp_redirect(home_url('/my-account/'));
exit;
} else {
wp_redirect(home_url('/login/'));
exit;
}
}
}
add_action('init','disable_dashboard_access');
提前致谢。
解决方法
按角色重定向用户
function wpsp_login_redirect($redirect_to,$request,$user){
global $user;
if (isset($user->roles) && is_array($user->roles))
{
if (in_array('administrator',$user->roles)) //check for admins
{
return $redirect_to; // redirect them to the default place
}
else
{
return site_url('/wp-admin/admin.php?page=sch-dashboard');
}
}
return $redirect_to;
}
add_filter('login_redirect','wpsp_login_redirect',10,3);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。