validate_username

Проверяет правильность написания имени пользователя (username – логина).

Если в имени пользователя будут использованы недопустимые символы, то функция выведет ошибку — проверка не пройдена.

Допустимые символы это: алфавит (англ.), цифры и символы: _- пробел . *. Все остальное будет удалено.

Хуки из функции:
validate_username
Возвращает

true, если имя соответсвует нормам, иначе false.

Использование

<?php validate_username( $username ) ?>
$username(строка) (обязательный)
Имя пользователя (логин) для проверки.
По умолчанию: нет

Примеры

#1. Проверим логин вновь создаваемого пользователя и его существование в Базе Данных.

Если имя прошло проверку и такого пользователя еще нет в БД, то зарегистрируем пользователя:

<?php
	$username = $_POST['username'];
	$error = false;
	if( !validate_username( $username ) )
		$error = "В имени пользователя использованы недопустимые символы!";
	if ( !$error && username_exists( $username ) )
		$error = "Такое имя пользователя уже используется!";

	if( !$error ){
		// можно регистрировать
	}
?>

Заметки

До версии 3.0 функция располагалась в файле: wp-includes/registration.php.

Код из


wp-includes/user.php

WP 4.7.2

<?php
function validate_username( $username ) {
	$sanitized = sanitize_user( $username, true );
	$valid = ( $sanitized == $username && ! empty( $sanitized ) );

	/**
	 * Filters whether the provided username is valid or not.
	 *
	 * @since 2.0.1
	 *
	 * @param bool   $valid    Whether given username is valid.
	 * @param string $username Username to check.
	 */
	return apply_filters( 'validate_username', $valid, $username );
}