Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Validate IP Address For A Given User
- */
- add_filter( 'authenticate', function( $user )
- {
- // Adjust to your needs:
- $allowed_ip = '127.0.0.1';
- $ip_restricted_user_id = 1;
- // Current user IP address
- $current_user_ip = isset( $_SERVER['REMOTE_ADDR'] ) ? $_SERVER['REMOTE_ADDR'] : null;
- // Nothing to do for valid IP address
- if( $current_ip === $allowed_ip )
- return $user;
- // Nothing to do for users that are not IP restricted
- if(
- $user instanceof WP_User
- && $user->ID > 0
- && $ip_restricted_user_id != $user->ID
- )
- return $user;
- // Add an 'Invalid IP address' error
- if( is_wp_error( $user ) )
- $user->add(
- 'invalid_ip',
- sprintf(
- '<strong>%s</strong>: %s',
- esc_html__( 'ERROR', 'mydomain' ),
- esc_html__( 'IP address is invalid.', 'mydomain' )
- )
- );
- // Create a new 'Invalid IP address' error
- else
- $user = new WP_Error(
- 'invalid_ip',
- sprintf(
- '<strong>%s</strong>: %s',
- esc_html__( 'ERROR', 'mydomain' ),
- esc_html__( 'IP address is invalid.', 'mydomain' )
- )
- );
- return $user;
- }, 100 );
- add_filter( 'authenticate', 'wp_authenticate_username_password', 20, 3 );
- add_filter( 'authenticate', 'wp_authenticate_email_password', 20, 3 );
- add_filter( 'authenticate', 'wp_authenticate_spam_check', 99 );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement