I am looking for a way to restrict users of a certain role to only be able to access one page on my wordpress site. When a user of the role logs in they should be redirected to the page and they should not be able to access any other pages. I have tried multiple plugins that can restrict pages to users, but I have not found one that can restrict users to pages. Does this functionality exist within Wordpress and how would I implement it if it does?


You'd have to add a function during the init action of WP. There you'll get the current user and check whether they have a specific role assigned to them and redirect to the page when they do.

add_action('init', function () {
    $user = wp_get_current_user();
    $role = 'your role';

    if (in_array($role, $user->roles)) {

WordPress Function References:

Relevant SE posts:

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.