Volete applicare una politica di password rigorosa nei vostri WPForm, che richieda una combinazione di lettere maiuscole, minuscole, numeri e simboli? Sebbene l'opzione Strong Password integrata in WPForms non imponga questi requisiti in modo rigoroso, è possibile ottenere questo risultato utilizzando uno snippet di codice personalizzato.
In questo tutorial vi mostreremo come aggiungere la convalida personalizzata della password ai vostri WPForm.
Aggiunta dello snippet di codice
Per implementare la convalida personalizzata della password, è necessario aggiungere uno snippet di codice personalizzato al sito. Se avete bisogno di aiuto per aggiungere codice personalizzato, consultate il nostro tutorial su aggiungere snippet di codice.
Aggiungete il seguente frammento di codice al vostro sito:
/**
* 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' );
}
}
}
}
Personalizzazione dello Snippet
È possibile modificare questo snippet per adattarlo alle proprie esigenze specifiche:
- ID campo: Sostituire
100
nelif ( $field_id == 100 && $field['type'] === 'password' ) {
con l'ID effettivo del campo della password. Per trovare l'ID del campo, consultare la nostra guida su come trovare gli ID dei campi. - Messaggio di errore: È possibile personalizzare il messaggio di errore modificando il testo nel campo
esc_html__()
funzione. - Requisiti per la password: Se si desidera modificare i requisiti della password, è possibile modificare le espressioni regolari nel file
preg_match()
o aggiungere/rimuovere controlli secondo le necessità.
Ed ecco fatto! Ora avete implementato la convalida personalizzata delle password nei vostri WPForm. In questo modo, gli utenti potranno creare password forti che soddisfino i vostri requisiti specifici.
Volete saperne di più sui messaggi di convalida che appaiono nei vostri moduli? Consultate il nostro tutorial sulla modifica dei messaggi di convalida per maggiori dettagli.