Com a função PHP username_exists() você verifica se um usuário existe, dado o seu nome de usuário (username). Veja abaixo um exemplo:

<?php
$usuario = "admin";

$usuario_existe = username_exists( $usuario );

if ( $usuario_existe ) {
	// Exibe as informações de forma que o conteúdo seja traduzível
	printf(
		__( 'O usuário %s já existe.', 'danielkossmann' ),
		$usuario
	);
} else {
	// Exibe as informações de forma que o conteúdo seja traduzível
	printf(
		__( 'O usuário "%s" NÃO existe.', 'danielkossmann' ),
		$usuario
	);
}Code language: PHP (php)

Como criar um formulário para verificar se um nome de usuário (username) existe no WordPress

Um possível uso da função PHP username_exists() é verificar se um nome de usuário existe a partir de um formulário. Veja abaixo como ficou o código:

<?php
// Verifica se foi enviado algum dado por POST
if ( isset( $_POST ) && !empty( $_POST['usuario'] ) ) {

	// Trata o valor enviado pelo formulário
	$usuario = sanitize_user( $_POST['usuario'] );

	// Verifica se o usuário existe
	$usuario_existe = username_exists( $usuario );

	// Exibe uma mensagem de acordo com a resposta
	if ( $usuario_existe ) {
		// Exibe as informações de forma que o conteúdo seja traduzível
		printf(
			__( 'O usuário %s já existe.', 'danielkossmann' ),
			$usuario
		);
	} else {
		// Exibe as informações de forma que o conteúdo seja traduzível
		printf(
			__( 'O usuário "%s" NÃO existe.', 'danielkossmann' ),
			$usuario
		);
	}
} else {
	// Não foi enviado um dado, então exibe formulário
?>
	<form method="post">
		<input type="text" name="usuario" placeholder="<?php _e( 'Digite o nome do usuário', 'danielkossmann' ); ?>">
		<input type="submit" value="<?php _e( 'Verificar usuário', 'danielkossmann' ); ?>">
	</form>
	
<?php
}Code language: PHP (php)

Por motivos de segurança você sempre deve tratar os dados recebidos através de formulários, por isso utilizei a função PHP sanitize_user() para remover caracteres inválidos do valor de $_POST['usuario']. O código acima faz o envio do formulário para a mesma página em que foi inserido.



Comments

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *