¿Le gustaría aplicar una estricta política de contraseñas en sus WPForms que requiera una combinación de letras mayúsculas, minúsculas, números y símbolos? Si bien la opción de contraseña segura incorporada en WPForms no implementa estrictamente estos requisitos, puede lograrlo utilizando un fragmento de código personalizado.
En este tutorial, le mostraremos cómo agregar validación de contraseña personalizada a sus WPForms.
Añadir el fragmento de código
Para implementar la validación de contraseña personalizada, tendrás que añadir un fragmento de código personalizado a tu sitio. Si necesita ayuda para añadir código personalizado, consulte nuestro tutorial sobre cómo añadir fragmentos de código.
Añada el siguiente fragmento de código a su sitio:
/**
* 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' );
}
}
}
}
Personalización del fragmento
Puede modificar este fragmento para adaptarlo a sus necesidades específicas:
- ID de campo: Sustituir
100
en elif ( $field_id == 100 && $field['type'] === 'password' ) {
con el ID real de su campo de contraseña. Para encontrar el ID de su campo, consulte nuestra guía sobre cómo encontrar los ID de campo. - Mensaje de error: Puede personalizar el mensaje de error modificando el texto del campo
esc_html__()
función. - Requisitos de contraseña: Si desea cambiar los requisitos de contraseña, puede modificar las expresiones regulares en el campo
preg_match()
funciones o añadir/eliminar controles según sea necesario.
Y ¡listo! Ahora ha implementado la validación de contraseña personalizada en sus WPForms. Esto asegurará que los usuarios creen contraseñas seguras que cumplan con sus requisitos específicos.
¿Quieres saber más sobre los mensajes de validación que aparecen en tus formularios? Echa un vistazo a nuestro tutorial sobre cómo cambiar los mensajes de validación para obtener más detalles.