plugin-icon

Magic Login Mail or QR Code

投稿者: Katsushi Kawamori·
メールアドレスを入力すると、パスワード無しでログインできるマジックリンクまたは QR コードが記載されたメールが送信されます。
評価
5/5
バージョン
2.05
有効インストール数
100
最終更新日時
Nov 25, 2025

メールアドレスを入力すると、パスワード無しでログインできるマジックリンクまたは QR コードが記載されたメールが送信されます。

ログイン

  • メールアドレスでのログインのみです。
  • 登録ユーザーのみログインできます。
  • メールに記載されたマジックリンクあるいは QR コードからパスワードレスでログインできます。
  • ショートコード:[magic_login]
  • アクションフック:do_action( 'magic_email_send', $emails | array, true | bool ) :管理アカウントからマジックリンクを一斉送信する場合。
  • ユーザーの管理画面で QR コードログインが可能。

感謝

  • このプラグインはPasswordless Loginを改変したものです。
  • 主な変更点は、各種フィルターフックの追加と、以下のアクションフックの追加です。

アクションフック

  • 複数アカウントにログインするためのマジックリンク付きメールを、管理画面から一括送信するためのものです。
  • このアクションフックを使う場合、フィルターフック「magic_login_mail_url」に、ショートコード「magic_login」を配置したページの 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 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 .= '<br><br>' . '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 );
無料Business プランを利用中
インストールすることで、WordPress.com の利用規約サードパーティプラグイン利用規約に同意したことになります。
最大テスト回数
WordPress 6.9
このプラグインをダウンロードして、 サイトに使用できます。