Magic Login – Action Hooks #
Hook Name | Summary | Since | File | Parameters |
---|---|---|---|---|
magic_login_form |
Fires following the 'email' field in the login form. | 1.0 | ./includes/shortcode.php |
None |
magic_login_pro_updated |
Fires after plugin update. | 2.1 | ./includes/classes/Install.php |
None |
magic_login_invalid_code |
Fires when the code login is invalid | 2.4 | ./includes/classes/CodeLogin.php |
None |
magic_login_code_login |
Apply login action | 2.4 | ./includes/classes/CodeLogin.php |
None |
magic_login_code_form |
Fires following the 'code' field in the login form. | 2.4 | ./includes/classes/CodeLogin.php |
None |
magic_login_send_login_sms |
Send login SMS | 2.4 | ./includes/classes/SmsService.php |
$user_id int – User ID |
magic_login_settings_imported |
Action after settings are imported. | 2.5 | ./includes/classes/Tools.php |
$imported array – The imported settings array. |
magic_login_fluent_crm_before_create_login_link |
Fires before creating Magic Login link for FluentCRM subscriber. | 2.4 | ./includes/classes/Integrations/FluentCRM.php |
$user object – WP_User object.$subscriber->email mixed – – |
magic_login_before_woocommerce_login_form |
Fires before the WooCommerce login form. | 2.4 | ./includes/classes/Integrations/WooCommerce.php |
None |
magic_login_after_woocommerce_login_form |
Fires after the WooCommerce login form. | 2.4 | ./includes/classes/Integrations/WooCommerce.php |
None |
magic_login_handle_login_request |
Fires before handling the login request | – | ./includes/classes/LoginManager.php |
None |
magic_login_invalid_user |
Fires when the user is not found. | – | ./includes/classes/LoginManager.php |
None |
magic_login_invalid_token |
Fires when the token is invalid. | – | ./includes/classes/LoginManager.php |
None |
magic_login_before_login |
Fires before the user is logged in. | – | ./includes/classes/LoginManager.php |
$user \WP_User – The WP_User object.$current_token array – The current token data. |
magic_login_logged_in |
Fires after the user is logged in. | – | ./includes/classes/LoginManager.php |
$user \WP_User – The WP_User object.$current_token array – The current token data. |
wp_login |
Fires after the user is logged in as standard WordPress action. | – | ./includes/classes/LoginManager.php |
$user->user_login mixed – –$user \WP_User – The WP_User object. |
magic_login_form |
Fires following the 'email' field in the login form. | 1.0 | ./includes/classes/LoginManager.php |
None |
magic_login_send_login_link |
Fires before sending the login link email. | – | ./includes/classes/LoginManager.php |
$user \WP_User – The user object. |
post_paddlepress_plugin_updater_setup |
Fires after the $paddlepress_plugin_data is setup. | 1.0 | ./includes/classes/Updater.php |
$paddlepress_plugin_data array – Array of plugin data. |
in_plugin_update_message-{$file} |
show update nofication row — needed for multisite subsites, because WP won't tell you otherwise! | – | ./includes/classes/Updater.php |
$plugin array – An array of plugin data.$version_info mixed – – |
magic_login_registration_form_start |
Fires at the start of the registration form | 2.2 | ./includes/classes/Registration.php |
None |
magic_login_registration_form_middle |
Fires in the middle of the registration form | 2.2 | ./includes/classes/Registration.php |
None |
magic_login_registration_form_before_submit |
Fires before the submit button in the registration form | 2.2 | ./includes/classes/Registration.php |
None |
magic_login_registration_before_process |
Fires before processing the registration form | – | ./includes/classes/Registration.php |
$is_ajax bool – Is the request AJAX?$user_data['first_name'] mixed – –$user_data['last_name'] mixed – –$user_data['email'] mixed – –$terms bool – Terms accepted$user_data[PHONE_NUMBER_META] mixed – – |
magic_login_registration_before_user_create |
Fires before user creation | 2.2 | ./includes/classes/Registration.php |
$userdata array – User data. |
magic_login_registration_after_user_create |
Fires after user creation | 2.2 | ./includes/classes/Registration.php |
$user_id int – User ID.$userdata array – User data. |
magic_login_form |
Fires following the 'log' field in the magic login form. | – | ./includes/block.php |
None |
magic_login_invalid_ip |
Fires when the IP address is invalid | – | ./includes/security.php |
None |
magic_login_pro_loaded |
Fire an action after the magic login core is loaded. | – | ./includes/core.php |
None |
magic_login_pro_init |
Fire an action after the magic login core is initialized. | – | ./includes/core.php |
None |
Magic Login – Filter Hooks #
Hook Name | Summary | Since | File | Parameters |
---|---|---|---|---|
magic_login_shortcode_form_action |
Filter the form action URL for the login shortcode. | – | ./includes/shortcode.php |
'' mixed – – |
magic_login_pre_process_code_login_request |
Pre process code login request | 2.4 | ./includes/classes/CodeLogin.php |
null mixed – – |
magic_login_pre_code_login |
Pre authenticate code login | 2.4 | ./includes/classes/CodeLogin.php |
true mixed – –$user object – User object$token string – Token |
magic_login_get_user_by_phone_number_args |
Filters the arguments used to get the user by phone number | 2.4 | ./includes/classes/SmsService.php |
[
'meta_key' => PHONE_NUMBER_META,
// phpcs:ignore
'meta_value' => sanitize_phone_number($phone_number),
// phpcs:ignore
'number' => 1,
] mixed – –$phone_number string – Phone number |
magic_login_user_phone_number |
Get the user phone number | 2.4 | ./includes/classes/SmsService.php |
$phone_number mixed – –$user_id int – User ID |
magic_login_sms_login_message |
Filter the SMS login message | 2.4 | ./includes/classes/SmsService.php |
$message string – SMS login message |
magic_login_sms_placeholders |
Filter the SMS placeholders | 2.4 | ./includes/classes/SmsService.php |
$placeholders array – Placeholders$user_id int – User ID |
magic_login_export_settings |
Filter the export settings. | 2.5 | ./includes/classes/Tools.php |
$export array – The export settings array. |
magic_login_import_settings |
Filter the import settings. | 2.5 | ./includes/classes/Tools.php |
$imported array – The import settings array. |
magic_login_fluent_crm_create_login_link |
Filter the Magic Login link for FluentCRM subscriber. | 2.4 | ./includes/classes/Integrations/FluentCRM.php |
$login_link string – Magic Login link.$user object – WP_User object.$subscriber->email mixed – – |
magic_login_edd_title |
Filter the title of the Magic Login form. | – | ./includes/classes/Integrations/EDD.php |
esc_html__('Quick Login with Magic Link', 'magic-login') mixed – – |
magic_login_edd_shortcode |
Filter the shortcode for the Magic Login form. | – | ./includes/classes/Integrations/EDD.php |
' mixed – – |
magic_login_hide_on_woocommerce_login_form |
Filter the title of the Magic Login form on WooCommerce login form. | – | ./includes/classes/Integrations/WooCommerce.php |
true mixed – – |
magic_login_shortcode_content_on_woocommerce_login_form |
Filter the shortcode content of the Magic Login form on WooCommerce login form. | – | ./includes/classes/Integrations/WooCommerce.php |
' mixed – – |
magic_login_woo_customer_login_title |
Filter the title of the Magic Login form on WooCommerce My Account page. | – | ./includes/classes/Integrations/WooCommerce.php |
esc_html__('Quick Login with Magic Link', 'magic-login') mixed – – |
magic_login_woo_customer_login_shortcode |
Filter the shortcode for the Magic Login form on WooCommerce My Account page. | – | ./includes/classes/Integrations/WooCommerce.php |
' mixed – – |
magic_login_replace_magic_link_in_wp_mail |
Filter magic_login_replace_magic_link_in_wp_mail | 2.0.0 | ./includes/classes/LoginManager.php |
true mixed – –$atts array – wp_mail args$user \WP_User – user object |
magic_login_replace_magic_link_in_wp_mail_message |
Filter magic login replace | 2.0.0 | ./includes/classes/LoginManager.php |
$magic_link string – login link$atts array – wp_mail args |
magic_login_replace_magic_login_qr_in_wp_mail_message |
Filter qr image source for wp_mail integration {{MAGIC_LOGIN_QR}} | 2.5 | ./includes/classes/LoginManager.php |
$qr_src string – qr image source$magic_link string – magic link$atts array – wp_mail args$user \WP_User – user object |
magic_login_replace_magic_login_qr_img_in_wp_mail_message |
Filter qr image tag for wp_mail integration {{MAGIC_LOGIN_QR_IMG}} | 2.5 | ./includes/classes/LoginManager.php |
$qr_img_tag string – qr image tag$magic_link string – magic link$atts array – wp_mail args$user \WP_User – user object |
magic_login_add_auto_login_link |
Filter auto login link | 1.6.0 | ./includes/classes/LoginManager.php |
true mixed – –$atts array – wp_mail args$user \WP_User – user object |
magic_login_auto_login_link_message |
Filter login message | 1.6 | ./includes/classes/LoginManager.php |
$login_message string – Appended message for the login$link string – Login URL$user \WP_User – User Object |
magic_login_auto_login_link_email_message |
Filter email message | 1.6 | ./includes/classes/LoginManager.php |
$email_message string – Email message$message string – Email content before appending login link$login_message string – Login message$args array – WP Mail args$link string – Login URL$user \WP_User – User Object |
magic_login_auto_login_excluded_subjects |
Exclude some of the emails Copy emails as is, for covering in translated versions | – | ./includes/classes/LoginManager.php |
[__('[%s] New Admin Email Address'), __('[%s] Network Admin Email Change Request'), __('[%s] Admin Email Changed'), __('[%s] Notice of Network Admin Email Change'), __('[%s] Login Details'), __('[%s] Password Reset'), __('[%s] Password Changed'), __('[%s] Email Change Request'), __('Your login confirmation code')] mixed – – |
magic_login_auto_login_link_excluded |
Filter if auto login link is excluded for given mail | 1.6 | ./includes/classes/LoginManager.php |
$is_excluded bool – whether the email is excluded or not$args array – wp_mail args |
magic_login_error_message |
Filter the error message | – | ./includes/classes/LoginManager.php |
$error string – Default error message.'invalid_user' mixed – – |
magic_login_invalid_token_error_message |
Filter the error message for invalid token. | – | ./includes/classes/LoginManager.php |
$error string – Default error message. |
magic_login_error_message |
Filter the error message for invalid token. | – | ./includes/classes/LoginManager.php |
$error string – Default error message.'invalid_token' mixed – – |
login_redirect |
Filter the redirect URL. | – | ./includes/classes/LoginManager.php |
$redirect_to string – The redirect URL.$requested_redirect_to string – The requested redirect URL.$user \WP_User – The WP_User object. |
magic_login_redirect |
Filter the redirect URL for Magic Login. | – | ./includes/classes/LoginManager.php |
$redirect_to string – The redirect URL.$user \WP_User – The WP_User object.
* * @return string The modified redirect URL. |
magic_login_info_message |
Filter the info message | – | ./includes/classes/LoginManager.php |
$response['info'] mixed – –$args array – Arguments passed to the function. |
magic_login_process_login_request_result |
Filter the result of the login process | 2.4 | ./includes/classes/LoginManager.php |
$response array – Result of the login process$args array – Arguments passed to the function |
magic_login_before_login_form_redirect |
– | – | ./includes/classes/LoginManager.php |
null mixed – – |
magic_login_pre_process_login_request |
Fires before processing the login request | – | ./includes/classes/LoginManager.php |
null mixed – – |
magic_login_pre_send_login_link |
Apply pre-send link filter. Useful for preventing sending the login link. | – | ./includes/classes/LoginManager.php |
null mixed – –$user \WP_User – – |
magic_login_missing_user_error_message |
Filter the error message when user is missing | 2.4 | ./includes/classes/LoginManager.php |
$error_message mixed – –$error_code mixed – –$args mixed – – |
magic_login_email_content |
Filter the email content | – | ./includes/classes/LoginManager.php |
$login_email string – Email content$placeholder_values array – Placeholder values |
magic_login_email_subject |
Filter the email subject | – | ./includes/classes/LoginManager.php |
$email_subject string – Email subject$placeholder_values array – Placeholder values |
magic_login_email_headers |
Filter the email headers | – | ./includes/classes/LoginManager.php |
array('Content-Type: text/html; charset=UTF-8') mixed – – |
magic_login_qr_url |
Filter the URL before encoding it into a QR code. | 2.5 | ./includes/classes/QR.php |
$url string – The URL to encode in the QR code. |
magic_login_qr_type |
Filter the type of output (e.g., png or svg). | – | ./includes/classes/QR.php |
$type string – The type of image to generate ('png' or 'svg'). |
magic_login_qr_options |
Filter the options used for QR generation. | 2.5 | ./includes/classes/QR.php |
[
'encoding' => new Encoding('UTF-8'),
'eccLevel' => new ErrorCorrectionLevelLow(),
'size' => $scale * 50,
// scale = 5 → 250px
'margin' => 10,
] mixed – – |
magic_login_qr_image_src |
Filter the final QR image source URL (after encoding). | 2.5 | ./includes/classes/QR.php |
home_url('/magic-login-qr?url=' . $encoded) mixed – –$url mixed – – |
magic_login_qr_img_args |
Filter the QR code <img> tag attributes before rendering. | 2.5 | ./includes/classes/QR.php |
$args array – {
Arguments for customizing the QR image tag.
@type string $class CSS class.
@type string $alt Alternative text.
@type int $width Image width.
}$url string – The login URL being encoded. |
magic_login_qr_mime_type |
Allow filtering the final MIME type. | 2.5 | ./includes/classes/QR.php |
$mime string – The MIME type of the image.$type string – The type of image (e.g., 'png', 'svg'). |
magic_login_recaptcha_attributes |
Filter the ReCaptcha attributes before rendering. | – | ./includes/classes/ReCaptchaService.php |
$default_attributes array – Default attributes for the ReCaptcha.$this->type mixed – – |
magic_login_recaptcha_attributes |
Render the ReCaptcha | – | ./includes/classes/ReCaptchaService.php |
$default_attributes mixed – –$this->type mixed – – |
paddlepress_api_request_verify_ssl |
Returns if the SSL of the store should be verified. | 1.0 | ./includes/classes/Updater.php |
true mixed – –$this mixed – – |
magic_login_registration_form_shortcode_atts |
Filter registration form attributes | 2.2 | ./includes/classes/Registration.php |
$atts array – Shortcode attributes |
magic_login_registration_form_validation_rules |
Filter validation rules for registration form | 2.2 | ./includes/classes/Registration.php |
$validation_rules array – Validation rules |
magic_login_registration_redirect_url |
Filter registration redirection URL | 2.5 | ./includes/classes/Registration.php |
$redirect_url string – Redirection URL$user_id int – User ID$userdata array – User data |
magic_login_registration_success_message |
Filter registration success message | 2.2 | ./includes/classes/Registration.php |
$success_message string – Success message$user_id int – User ID$userdata array – User data |
magic_login_registration_allowed_domains |
Filter allowed domains for registration | 2.4 | ./includes/classes/Registration.php |
$allowed_domains array – Allowed domains |
magic_login_registration_user_data |
Filter user data before registration | 2.2 | ./includes/classes/Registration.php |
$userdata array – User data |
magic_login_registration_send_email |
Filter whether to send registration email | 2.2 | ./includes/classes/Registration.php |
$settings['registration']['send_email'] mixed – –$user_id int – User ID.$userdata array – User data. |
magic_login_registration_email_subject |
Filter registration email subject and content | 2.2 | ./includes/classes/Registration.php |
$settings['registration']['email_subject'] mixed – –$user_id int – User ID$userdata array – User data |
magic_login_registration_email_content |
Filter registration email content | 2.2 | ./includes/classes/Registration.php |
$settings['registration']['email_content'] mixed – –$user_id int – User ID$userdata array – User data |
magic_login_email_headers |
Filter email headers | – | ./includes/classes/Registration.php |
array('Content-Type: text/html; charset=UTF-8') mixed – – |
magic_login_registration_is_domain_allowed |
Filter to override domain restriction logic dynamically. | 2.4 | ./includes/classes/Registration.php |
$is_allowed bool – Whether the email domain is allowed.$email string – The user's email address.$allowed_domains array – List of allowed domains. |
magic_login_sms_providers |
Filter SMS providers | 2.4 | ./includes/classes/Services/SmsProviderFactory.php |
['twilio' => TwilioSmsProvider::class] mixed – – |
magic_login_twilio_sms_options |
Filter Twilio SMS options | 2.4.2 | ./includes/classes/Services/TwilioSmsProvider.php |
['from' => $this->from, 'body' => $message] mixed – – |
magic_login_admin_menu_cap |
* Filter the capability required to access the Magic Login Pro settings page. | – | ./includes/admin/dashboard.php |
'manage_options' mixed – – |
magic_login_login_block_form_action |
Filter the form action URL for the login block. | – | ./includes/block.php |
'' mixed – – |
magic_login_create_user_token |
Filter the token | 2.4 | ./includes/utils.php |
$new_token string – New token$user->ID mixed – –$context string – Context |
magic_login_create_login_link |
Filter the login URL | 2.4 | ./includes/utils.php |
$login_url string – Login URL$user object – WP_User object$context string – Context$redirect_to string – Redirect URL |
magic_login_client_ip |
`HTTP_X_FORWARDED_FOR` removed in 1.5 Filters the ip address | 1.5 | ./includes/utils.php |
$_SERVER['REMOTE_ADDR'] mixed – – |
magic_login_get_wp_login_url |
Filter the login URL for magic login | 2.3.5 | ./includes/utils.php |
$url string – site login url. |
magic_login_user_tokens |
Filter user tokens | 2.1 | ./includes/utils.php |
$tokens array – User tokens.$user_id int – User ID.$clear_expired bool – Whether to clear expired tokens or not. |
magic_login_license_key |
Filter the license key | – | ./includes/utils.php |
get_option(LICENSE_KEY_OPTION) mixed – – |
magic_login_current_user_can_control_user |
Filter the capability check for user profile | – | ./includes/utils.php |
$status bool – Status |
magic_login_email_placeholders |
Filter the email placeholders | 2.4.2 | ./includes/utils.php |
$placeholders array – Placeholders$user->ID mixed – – |
magic_login_token_ttl_by_user |
Filter the token TTL by user | 2.2 | ./includes/utils.php |
$ttl int – TTL in minutes$user_id int – User ID |
magic_login_allowed_domains |
Filter allowed domains for login | 2.5 | ./includes/security.php |
$allowed_domains array – Allowed domains |
plugin_locale |
Registers the default textdomain. | – | ./includes/core.php |
get_locale() mixed – –'magic-login' mixed – – |