The Magic Login – FluentCRM Integration allows you to seamlessly integrate Magic Login with FluentCRM, enabling automatic user authentication and email-based login workflows within FluentCRM campaigns. This integration enhances user experience by reducing friction during logins while leveraging FluentCRM’s automation features.
Hooks Overview #
magic_login_fluent_crm_before_create_login_link
(Action Hook)- Fires before creating the Magic Login link for a FluentCRM subscriber.
- Allows developers to perform actions such as logging, modifying user data, or validating custom conditions before generating the login link.
magic_login_fluent_crm_create_login_link
(Filter Hook)- Allows modification of the generated Magic Login link before it is returned.
- Developers can use this to customize the login URL, add tracking parameters, or enforce security measures.
Usage Example: Adding a Tracking Parameter
add_filter( 'magic_login_fluent_crm_create_login_link', function( $login_link, $user, $email ) {
return $login_link . '&utm_source=fluentcrm';
}, 10, 3 );
Usage Example: Setting a Dynamic redirect_to
Parameter
add_filter( 'magic_login_fluent_crm_create_login_link', function( $login_link, $user, $email ) {
$redirect_url = home_url(); // Default redirect to homepage
if ( in_array( 'administrator', $user->roles ) ) {
$redirect_url = admin_url(); // Redirect admins to the dashboard
} elseif ( in_array( 'customer', $user->roles ) ) {
$redirect_url = site_url( '/customer-dashboard/' ); // Redirect customers to their dashboard
} elseif ( get_user_meta( $user->ID, 'preferred_page', true ) ) {
$redirect_url = get_user_meta( $user->ID, 'preferred_page', true ); // Custom redirect per user
}
return add_query_arg( 'redirect_to', urlencode( $redirect_url ), $login_link );
}, 10, 3 );
or you can set $_POST[‘redirect_to’] in the action:
add_action( 'magic_login_fluent_crm_before_create_login_link', function () {
$_POST['redirect_to'] = 'https://example.com';
} );