Magic Login – Magic Link & Passwordless Authentication for WordPress – Login Without Password
Easy, secure, and passwordless authentication for WordPress. Streamline the login process by sending links to your users. No more passwords to remember, no more password resets, and no more password strength requirements. Learn more about Magic Login Key Features 🌟 Passwordless Authentication: No more forgotten passwords or complex requirements. Magic Links: Secure, unique links sent directly to users’ email inboxes. Auto Login: Support for auto-login links in outgoing emails. It’s useful when pending action from a user, such as reply a comment, complete the checkout, etc. Native Honeypot Protection: Add a lightweight, no-CAPTCHA spam protection layer to Magic Login forms.Learn more User-Friendly: Simplifies the login process for all users. Enhanced Security: Reduces risks associated with weak passwords. Tools: Export, import, and reset plugin settings easily from the admin panel or WP-CLI. Learn more How does it work? 🪄 User enters their email address. A unique magic link is sent to their inbox. Clicking the link authenticates and logs in the user. PRO Features 🎩 Here are the premium features that come with Magic Login Pro: SMS Login: Send magic login links via SMS. Learn more. QR Code Login: Let users log in by scanning a QR code. Learn more. Registration: Enable easy user registration directly from the login form or with a shortcode. Learn more. CLI Command: Use WP-CLI to create login links, generate QR codes, export/import settings, and more. Learn more. Brute Force Protection: Limit rate of login attempts and block IP temporarily. Login request throttling: Limit login link generation for a certain period. IP Check: Enhance the security by restricting users to log in from the same IP address that requested the link. Domain Restriction: Allow only certain domains to use the magic link. Login Email Customization: Customize login message by using email placeholders. Login Redirect: Redirect users to a specific page right after login. You can also redirect different pages based on the user role. WooCommerce Integration: Seamless checkout experience for returning customers. Learn more. Easy Digital Downloads (EDD) Integration: Enhance the checkout experience with seamless magic login support. Learn more. FluentCRM Integration: Send magic login links directly via FluentCRM. Learn more. reCAPTCHA Integration: Safeguard your login and registration forms from spam with Google reCAPTCHA. Learn more. Cloudflare Turnstile Integration: Enhance spam protection for your login and registration forms using Cloudflare Turnstile. Learn more. Friendly Captcha Integration: Protect your login and registration forms from bots with privacy-friendly Friendly Captcha. Learn more. API Support: Integrate Magic Login with your custom applications using the REST API. By upgrading to Magic Login Pro you also get access to one-on-one help from our knowledgeable support team and our extensive documentation site. Explore Magic Login Pro Documentation Our documentation can be found on https://handyplugins.co/docs-category/magic-login-pro/ Hook reference: https://handyplugins.co/docs/magic-login-hooks-doc/ Contributing & Bug Report Bug reports and pull requests are welcome on GitHub. Some of our features are pro only, please consider before sending PR. If you like Magic Login, then consider checking out our other projects: Magic Login Pro – Easy, secure, and passwordless authentication for WordPress. * SessionQuota Pro – Limit concurrent sessions in WordPress. * Stream Integration Pro – Upload, sync, restore, and manage WordPress videos with Cloudflare Stream. * Easy Text-to-Speech – Convert written content into high-quality synthesized speech for WordPress. * Handywriter – AI-powered writing assistant for WordPress. * PaddlePress PRO – Paddle plugin for WordPress. * WP Accessibility Toolkit – Tools to help make your WordPress site more accessible. * Powered Cache – Caching and optimization for WordPress to help improve PageSpeed and Core Web Vitals.
Top keywords
- login28×4.84%
- magic14×2.42%
- learn13×2.25%
- magic login11×1.90%
- pro9×1.55%
- wordpress9×1.55%
- integration7×1.21%
- links7×1.21%
- users6×1.04%
- link5×0.86%
- registration5×0.86%
- user5×0.86%
Magic Login Mail or QR Code
Enter your email address, and send you an email with a magic link or QR Code to login without a password. Login Login with email address only. Only registered users can login. Password-less login from the magic link or QR code notified in the email. shortcode : [magic_login] action hook : do_action( 'magic_email_send', $emails | array, true | bool ) : To send the magic link simultaneously from the management account. QR code login on the user’s administration screen. Thanks This plugin is a modified version of Passwordless Login. The main changes are the addition of various filter hooks and the addition of the following action hooks. Action hook This is for sending bulk e-mails with a magic link for login to multiple accounts from the management screen. When using this action hook, the URL of the page where the shortcode [magic_login] is placed should be specified in the filter hook ‘magic_login_mail_url’. /** ================================================== * To send the magic link simultaneously from the management account. * * @param array $emails Multiple email addresses. * @param bool true Output notifications to the management screen immediately after sending. */ do_action( 'magic_email_send', $emails, true ); Filter hooks /** ================================================== * Filter for magic link url with mail. * */ add_filter( 'magic_login_mail_url', function(){ return 'url'; }, 10, 1 ); /** ================================================== * Currently logged in user link for Magic Login Mail * * @param string $url URL. * @param int $user_id User ID. * @return $url */ add_filter( 'magic_login_mail_user_redirect', 'redirect_url_login_users', 10, 2 ); /** ================================================== * Login user after redirect for Magic Login Mail * * @param string $url URL. * @param int $user_id User ID. * @return $url */ add_filter( 'magic_login_mail_after_login_redirect', 'redirect_url_login_users', 10, 2 ); function redirect_url_login_users( $url, $user_id ){ /* your code */ return $url; } /** ================================================== * Filter for message with shortcode form. * */ add_filter( 'magic_login_mail_success_link_msg', function(){ return 'Message for success.'; }, 10, 1 ); add_filter( 'magic_login_mail_success_login_msg', function(){ return 'Message for success with login.'; }, 10, 1 ); add_filter( 'magic_login_mail_valid_errors', function(){ return 'Message for mail validation error.'; }, 10, 1 ); add_filter( 'magic_login_mail_email_errors', function(){ return 'Message for sent mail error.'; }, 10, 1 ); add_filter( 'magic_login_mail_invalid_token_error', function(){ return 'Message for token error.'; }, 10, 1 ); add_filter( 'magic_login_mail_form_label', function(){ return 'Message for form label.'; }, 10, 1 ); /** ================================================== * Filter for color with shortcode form. * */ add_filter( 'magic_login_mail_success_link_msg_back_color', function(){ return '#e7f7d3'; }, 10, 1 ); add_filter( 'magic_login_mail_success_login_msg_back_color', function(){ return '#e7f7d3'; }, 10, 1 ); add_filter( 'magic_login_mail_valid_errors_back_color', function(){ return '#ffebe8'; }, 10, 1 ); add_filter( 'magic_login_mail_email_errors_back_color', function(){ return '#ffebe8'; }, 10, 1 ); add_filter( 'magic_login_mail_invalid_token_error_back_color', function(){ return '#ffebe8'; }, 10, 1 ); /** ================================================== * Filter for input text size. * */ add_filter( 'magic_login_mail_input_size', function(){ return 17; }, 10, 1 ); /** ================================================== * Filter for class name. * */ add_filter( 'magic_login_mail_notice_class_name', function(){ return 'mynotice'; }, 10, 1 ); add_filter( 'magic_login_mail_form_class_name', function(){ return 'myform'; }, 10, 1 ); add_filter( 'magic_login_mail_label_class_name', function(){ return 'mylabel'; }, 10, 1 ); add_filter( 'magic_login_mail_input_class_name', function(){ return 'myinput'; }, 10, 1 ); add_filter( 'magic_login_mail_submit_class_name', function(){ return 'mysubmit'; }, 10, 1 ); /** ================================================== * Filter for message with mail subject. * */ add_filter( 'magic_login_mail_subject', function(){ return 'subject'; }, 10, 1 ); /** ================================================== * Filter for message with mail. * * @param string $message message. * @param string $url url. * @param string $exp_date_time expiration date and time. */ add_filter( 'magic_login_mail_message', function( $message, $url, $exp_date_time ) { $message .= ' ' . 'You may only log in once using the link above.'; return $message; }, 10, 3 ); /** ================================================== * Filter for login expiration. * */ add_filter( 'magic_login_mail_expiration', function(){ return 10; }, 10, 1 );