首页 > 解决方案 > Wordpress,根据登录凭据重定向到不同的页面

问题描述

我正在计划一个项目并写下步骤。

我需要知道是否可以使用wordpress根据登录凭据重定向用户,如下所示。
在此处输入图像描述

标签: wordpress

解决方案


是的,WordPress 有一个广泛的Action HooksFilters列表。这些允许您以编程方式添加/删除和修改功能或输出。

有一个称为过滤器的过滤器login_redirect,您可以将其绑定到用户角色或您想要的任何其他内容。

function role_based_login_redirect( $redirect_to, $request, $user ){
    // Make sure this is a valid user on this site
    if( isset( $user->roles ) && is_array( $user->roles ) ){
        if( in_array( 'subscriber', $user->roles ) ){
            // If user is a Default Role Subscriber
            $redirect_to = site_url( '/custom-subscriber-page/' );
        } else if( in_array( 'teacher', $user->roles ) ){
            // If user is a Custom Role of "Teacher"
            $redirect_to = admin_url( 'admin.php?page=teacher-custom-page' );
        }
    }

    return $redirect_to;
}

add_filter( 'login_redirect', 'role_based_login_redirect', 10, 3 );

推荐阅读