Role-Based Redirection Setup

Version: 1.2.1 (Core & Pro) Last Updated: November 2025 Difficulty: Intermediate Time Required: 20 minutes

Overview

Role-based redirection automatically sends different user roles to appropriate pages after login. Administrators go to the admin dashboard, subscribers to member content, customers to their account pages—all automatically.

Why Use Role-Based Redirection?

Benefits

✓ Improved User Experience

Users land exactly where they need to be—no extra clicks or navigation needed.

✓ Better Security

Keep subscribers away from admin areas and guide users to role-appropriate content.

✓ Professional Appearance

Create distinct experiences for different user types on your website.

Access Role-Based Redirection Settings

Step 1: Navigate to Settings

WordPress Admin → Settings → Attributes User Access
Step 2: Find Login & Redirection Section

Look for “Login & Redirection Settings”

Step 3: Locate Role-Based Redirects

Scroll to “Role-Based Redirects” panel

Setting Up Basic Redirects

Configure Redirects for Each Role

Administrator:

Redirect URL: /wp-admin/

Default: WordPress admin dashboard

Recommended: Keep default or use /admin-dashboard/

Editor:

Redirect URL: /wp-admin/edit.php

Default: Posts management

Recommended: /content-management/ or keep default

Author:

Redirect URL: /wp-admin/edit.php?post_type=post

Default: Their posts

Recommended: /my-articles/ or /author-dashboard/

Contributor:

Redirect URL: /wp-admin/edit.php

Default: Posts (can’t publish)

Recommended: /draft-submissions/ or keep default

Subscriber:

Redirect URL: /member-content/

Default: None (uses site homepage)

Recommended: /member-dashboard/ or /my-account/

Customer (WooCommerce):

Redirect URL: /my-account/

Default: WooCommerce account page

Recommended: Keep default or /customer-portal/

Common Redirect Scenarios

Scenario 1: Membership Site

Goal: All members see their dashboard, admins see admin area Configuration:

Administrator → /wp-admin/

Editor → /wp-admin/

Subscriber → /member-dashboard/

Create Required Pages:
  • Member Dashboard page at /member-dashboard/
  • Include: Welcome message, member content links, profile link

Scenario 2: E-Commerce Store

Goal: Customers see orders, staff see management tools Configuration:

Administrator → /wp-admin/

Shop Manager → /wp-admin/edit.php?post_type=shop_order

Customer → /my-account/

WooCommerce Integration:
  • Customer redirect uses WooCommerce account page
  • Shop Manager sees orders immediately

Scenario 3: Educational Platform

Goal: Students see courses, instructors see teaching tools Configuration:

Administrator → /wp-admin/

Instructor (custom role) → /instructor-dashboard/

Student (subscriber) → /student-portal/

Custom Pages Needed:
  • Instructor Dashboard: Course management, student progress
  • Student Portal: Enrolled courses, assignments, grades

Scenario 4: Multi-Author Blog

Goal: Writers see their posts, editors see all content Configuration:

Administrator → /wp-admin/

Editor → /wp-admin/edit.php

Author → /my-articles/

Contributor → /pending-submissions/

Custom Pages:
  • My Articles: Author’s published posts
  • Pending Submissions: Contributor’s drafts awaiting review

Scenario 5: Business Intranet

Goal: Employees see relevant department pages Configuration:

Administrator → /wp-admin/

HR Staff (custom role) → /hr-dashboard/

Employee (subscriber) → /employee-portal/

Manager (editor) → /management-dashboard/

Advanced Configuration

Priority System

When a user has multiple roles, redirects follow this priority:

Priority Order:
  • Administrator (highest priority)
  • Editor
  • Author
  • Contributor
  • Subscriber
  • Customer (lowest priority)
Example:

If a user is both Editor and Subscriber, they’ll use the Editor redirect.

Fallback Redirects

If no role-specific redirect is set:

System uses homepage (/) as fallback

To set a custom fallback:
  • Go to Settings → Reading
  • Set “Default Login Redirect”
  • Enter fallback URL (e.g., /dashboard/)

Testing Your Redirects

    • Create test accounts for each user role
    • Log in as each role and verify redirect destination
    • Check page exists at redirect URL (no 404 errors)
    • Verify page permissions match user role capabilities
    • Test logout behavior (where users land after logout)

Creating Destination Pages

Page Requirements

1. Create Pages First

Before setting redirects, create destination pages in WordPress

2. Set Appropriate Permissions

Use plugin settings or shortcodes to restrict page access

3. Add Relevant Content

Include role-appropriate navigation, links, and resources

Example: Member Dashboard Page

Page Creation:
  • Create new page: “Member Dashboard”
  • Set permalink: /member-dashboard/
  • Add content:

<h2>Welcome to Your Dashboard</h2>

<div class="dashboard-links">
    <a href="/member-content/">Access Member Content</a>
    <a href="/account/">My Account Settings</a>
    <a href="/support/">Get Support</a>
</div>

[recent_member_content limit="5"]
4. Restrict to Subscribers:

Use Attributes User Access shortcode:

[attributes_restrict roles=”subscriber”]

Dashboard content here

[/attributes_restrict]

Troubleshooting

Redirect Not Working

Problem: Users aren’t redirected after login

Solutions:
    • Verify redirect URL is correct (no typos)
    • Check page exists at redirect URL
    • Clear browser cache and cookies
    • Deactivate other redirect plugins temporarily
    • Check for JavaScript errors in browser console

Page Not Found (404)

Problem: Redirect goes to 404 error page

Solutions:
    • Create the destination page first
    • Check permalink settings match redirect URL
    • Flush permalinks: Settings → Permalinks → Save Changes
    • Verify page is published (not draft)

Wrong Role Redirect

Problem: User gets wrong role’s redirect

Solutions:
    • Check user’s actual role in Users → All Users
    • Remember: Users with multiple roles use highest priority role
    • Verify redirect configuration for that specific role

Redirect Loop

Problem: Page keeps redirecting infinitely

Solutions:
    • Don’t redirect to login page URL
    • Check for conflicting redirect rules in .htaccess
    • Disable other redirect plugins
    • Clear all caching (browser, plugin, server)

Best Practices

URL Best Practices

Pro Tip: Use Absolute URLs

Always use full paths starting with / (e.g., /dashboard/) not relative paths (dashboard/)

Good Examples:

/member-dashboard/

/my-account/

/employee-portal/

Bad Examples:

member-dashboard (missing leading slash)

../dashboard/ (relative path)

dashboard (missing slashes)

Page Structure

Dashboard Page Should Include:
  • Welcome message with user’s name
  • Quick links to common tasks
  • Recent activity or updates
  • Account settings link
  • Logout link

Security Considerations

Important Security Note:

Setting a redirect does NOT restrict page access! Use Attributes User Access shortcodes or Pro features to actually restrict page content to specific roles.

Example: Secure Member Page

[attributes_restrict roles=”subscriber,customer”]

This content only for subscribers and customers

[/attributes_restrict]

Custom Role Redirects

Adding Custom Role Support

If using custom roles (e.g., from membership plugins):
  • Custom role appears automatically in redirect settings
  • Configure redirect URL for custom role
  • Priority follows alphabetical order for custom roles
Example: “Premium Member” Role

Configuration:

Premium Member → /premium-content/

Create page at /premium-content/ with premium features

Integration with Other Features

WooCommerce Integration

Automatic:
  • “Customer” role recognized automatically
  • Redirect to /my-account/` recommended
  • Works with WooCommerce account pages

Membership Plugin Integration

Compatible with:
  • MemberPress
  • Restrict Content Pro
  • Paid Memberships Pro
  • WooCommerce Memberships
Setup:
  • Membership plugin creates custom roles
  • Configure redirects for those roles
  • Test with member accounts