Você gostaria de aplicar uma política de senha rigorosa em seus WPForms que exija uma combinação de letras maiúsculas, letras minúsculas, números e símbolos? Embora a opção de senha forte integrada do WPForms não implemente rigorosamente esses requisitos, você pode conseguir isso usando um trecho de código personalizado.
Neste tutorial, mostraremos como adicionar validação de senha personalizada aos seus WPForms.
Adição do snippet de código
Para implementar a validação de senha personalizada, você precisará adicionar um trecho de código personalizado ao seu site. Se precisar de ajuda para adicionar código personalizado, consulte nosso tutorial sobre como adicionar snippets de código.
Adicione o seguinte trecho de código ao seu site:
/**
* Implement Custom Password Validation.
*
* @link https://wpforms.com/developers/implementing-custom-password-validation-in-wpforms
*
*/
add_action('wpforms_process', 'custom_password_validation', 10, 3);
function custom_password_validation($fields, $entry, $form_data) {
foreach ( $fields as $field_id => $field ) {
// Check if this is the correct field (replace 100 with your actual field ID) and it's a password field
if ( $field_id == 100 && $field['type'] === 'password' ) {
$password = $field['value'];
// Define the password validation pattern
$uppercase = preg_match('@[A-Z]@', $password);
$lowercase = preg_match('@[a-z]@', $password);
$number = preg_match('@[0-9]@', $password);
$symbol = preg_match('@[\W]@', $password);
// Check if password meets all requirements
if ( !$uppercase || !$lowercase || !$number || !$symbol ) {
wpforms()->process->errors[$form_data['id']][$field_id] = esc_html__( 'Password must include at least one uppercase letter, one lowercase letter, one number, and one symbol.', 'plugin-domain' );
}
}
}
}
Personalização do snippet
Você pode modificar esse snippet para atender às suas necessidades específicas:
- ID do campo: Substituir
100
noif ( $field_id == 100 && $field['type'] === 'password' ) {
com o ID real do seu campo de senha. Para encontrar o ID do campo, consulte nosso guia sobre como encontrar IDs de campo. - Mensagem de erro: Você pode personalizar a mensagem de erro modificando o texto no campo
esc_html__()
função. - Requisitos de senha: Se quiser alterar os requisitos de senha, você pode modificar as expressões regulares na seção
preg_match()
funções ou adicionar/remover verificações conforme necessário.
E é isso! Agora você implementou a validação de senha personalizada em seus WPForms. Isso garantirá que os usuários criem senhas fortes que atendam aos seus requisitos específicos.
Gostaria de saber mais sobre as mensagens de validação que aparecem em seus formulários? Confira nosso tutorial sobre como alterar as mensagens de validação para obter mais detalhes.