Claude Code Plugins

Community-maintained marketplace

Feedback
0
0

Handle WordPress login/logout redirects. Use when implementing custom redirect logic.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name login-redirector
description Handle WordPress login/logout redirects. Use when implementing custom redirect logic.

Login Redirector

Instructions

When setting up login or logout redirects:

  1. Login redirect: Use login_redirect filter
  2. Logout redirect: Use logout_redirect filter
  3. Parameters: Both receive $redirect_to, $request, $user
  4. Return the redirect URL

Filter Parameters

add_filter('login_redirect', $callback, 10, 3);
add_filter('logout_redirect', $callback, 10, 3);

/**
 * @param string $redirect_to The redirect destination URL
 * @param string $request The requested redirect destination URL
 * @param WP_User|WP_Error|null $user The logged-in user or error
 */

Common Patterns

1. Redirect by User Role

add_filter('login_redirect', 'retrologin_redirect_by_role', 10, 3);
function retrologin_redirect_by_role(string $redirect_to, string $request, $user): string {
    if ($user instanceof WP_User) {
        if (user_can($user, 'administrator')) {
            return admin_url();
        }
        return home_url('/dashboard/');
    }
    return $redirect_to;
}

2. Keep Requested URL

add_filter('login_redirect', 'retrologin_keep_request', 10, 3);
function retrologin_redirect_keep_request(string $redirect_to, string $request, $user): string {
    // Use the page they were trying to access
    if (!empty($request) && strpos($request, 'wp-admin') === false) {
        return $request;
    }
    return $redirect_to;
}

3. Custom Logout Redirect

add_filter('logout_redirect', 'retrologin_logout_redirect', 10, 3);
function retrologin_logout_redirect(string $redirect_to, string $requested_redirect_to, $user): string {
    return home_url('/thank-you/');
}

Guidelines

  • Always check if $user is a valid WP_User
  • Handle WP_Error cases (failed login)
  • Return $redirect_to as fallback
  • Test redirects with different user roles