Use this checklist to resolve the most frequent support tickets.
edit_posts capability, enforced by RouteBase::permission_check().【F:app/Common/RouteBase.php†L29-L47】development in your config to bypass the permission gate for testing.【F:app/Common/RouteBase.php†L33-L37】wp_mail() is configured. The plugin sends HTML emails and will return an error response if delivery fails.【F:app/Repositories/MagicLinkRepository.php†L65-L118】email_magic_link_enable is toggled on and that the target user exists before requesting a link.【F:app/Logins/MagicLinkLogin/MagicLinkLogin.php†L22-L41】【F:app/Controllers/MagicLinkController.php†L13-L46】Time::now() and may appear invalid if time drift exists.【F:app/Logins/BrowserTokenLogin/JWTAuth.php†L101-L142】【F:app/Repositories/MagicLinkRepository.php†L96-L210】login_me_now_browser_token_expire or login_me_now_magic_link_expire to ensure custom code is not shortening lifetimes too aggressively.【F:app/Logins/BrowserTokenLogin/JWTAuth.php†L101-L142】【F:app/Repositories/MagicLinkRepository.php†L96-L210】login_me_now_popup_authenticate_redirection or login_me_now_temporary_login_redirect_uri. Misconfigured redirects can cause loops after login.【F:app/Repositories/AccountRepository.php†L53-L67】【F:app/Controllers/MagicLinkController.php†L58-L74】AccountRepository::login() is not invoked while another user session is active; the method logs out existing users before switching sessions.【F:app/Repositories/AccountRepository.php†L31-L43】login_me_now_secret_key exists. The plugin automatically creates it but deleting the option without regenerating a token will result in signature errors.【F:app/Logins/BrowserTokenLogin/JWTAuth.php†L248-L309】BrowserTokenModel::status() to ensure the token has not been revoked or expired.【F:app/Logins/BrowserTokenLogin/JWTAuth.php†L185-L205】If the issue persists, proceed to the FAQs or escalate using the Support guidelines.