WP hooks navigation: Home/browse • Actions index • Filters index
To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).
The best way to understand what a hook does is to look at where it occurs in the source code.
do_action( "hook_name" )
apply_filters( "hook_name", "what_to_filter" )
.Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.
This hook occurs 3 times in this file.
Line | Code |
---|---|
415 | if ( '' == $username ) |
416 | return new WP_Error('empty_username', __('<strong>ERROR</strong>: The username field is empty.')); |
417 |
|
418 | if ( '' == $password ) |
419 | return new WP_Error('empty_password', __('<strong>ERROR</strong>: The password field is empty.')); |
420 |
|
421 | $user = get_userdatabylogin($username); |
422 |
|
423 | if ( !$user || ($user->user_login != $username) ) { |
424 | do_action( 'wp_login_failed', $username ); |
425 | return new WP_Error('invalid_username', __('<strong>ERROR</strong>: Invalid username.')); |
426 | } |
427 |
|
428 | $user = apply_filters('wp_authenticate_user', $user, $password); |
429 | if ( is_wp_error($user) ) { |
430 | do_action( 'wp_login_failed', $username ); |
431 | return $user; |
432 | } |
433 |
|
434 | if ( !wp_check_password($password, $user->user_pass, $user->ID) ) { |
435 | do_action( 'wp_login_failed', $username ); |
436 | return new WP_Error('incorrect_password', __('<strong>ERROR</strong>: Incorrect password.')); |
437 | } |
438 |
|
439 | return new WP_User($user->ID); |
440 | } |
441 | endif; |
442 |
|
443 | /** |
444 | * wp_logout() - Log the current user out |