wp_is_password_reset_allowed_for_user

The timeline below displays how wordpress function wp_is_password_reset_allowed_for_user has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.3

/**
 * Checks if password reset is allowed for a specific user.
 *
 * @since 6.3.0
 *
 * @param int|WP_User $user The user to check.
 * @return bool|WP_Error True if allowed, false or WP_Error otherwise.
 */
function wp_is_password_reset_allowed_for_user($user)
{
    if (!is_object($user)) {
        $user = get_userdata($user);
    }
    if (!$user || !$user->exists()) {
        return false;
    }
    $allow = true;
    if (is_multisite() && is_user_spammy($user)) {
        $allow = false;
    }
    /**
     * Filters whether to allow a password to be reset.
     *
     * @since 2.7.0
     *
     * @param bool $allow   Whether to allow the password to be reset. Default true.
     * @param int  $user_id The ID of the user attempting to reset a password.
     */
    return apply_filters('allow_password_reset', $allow, $user->ID);
}