Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress

Creare un Plugin per personalizzare il form di registrazione di Wordpress

by
Difficulty:IntermediateLength:LongLanguages:

Italian (Italiano) translation by Roberta C (you can also view the original English article)

In aggiunta, WordPress fornisce un modulo di registrazione personalizzato che può essere utilizzato per impostare un nuovo utente, o per aggiungere un nuovo utente ad un'installazione esistente di WordPress. Ma cosa succede se si desidera implementare un modulo di registrazione personalizzato che non visualizzi le opzioni della dashboard di WordPress?

In questo tutorial impareremo come creare un modulo di registrazione personalizzato in WordPress usando una combinazione di template tag e shortcode.

Il modulo di registrazione predefinito è costituito da solo due campi - nome utente e indirizzo email.

La presenza dei soli campi nome utente e indirizzo email rendono incredibilmente facile il processo di registrazione. In primo luogo, si inserisce l'username e poi una e-mail alla quale sarà inviata una password. Successivamente, si accede al sito con la password e quindi si completa il profilo e modificando la password con qualcosa di ricordabile.

Invece di fare passare il nostro utente per un processo di registrazione così stressante, perché non prevedere un modulo di registrazione dritto al punto con alcuni campi supplementari importanti oltre al nome utente predefinito e la posta elettronica ad esempio una password, una URL al loro sito Web, una biografia, un nickname e il loro nome e cognome.

Questo è particolarmente utile in un sito web multi-autore come Tuts +.

In questo articolo, costruiremo un plugin per inserire un form di registrazione personalizzato con i campi seguenti:

  • username
  • password
  • email
  • URL del sito Web
  • nome
  • cognome
  • nickname
  • biografia (o una sezione about)

Il form di registrazione personalizzato può essere integrato in WordPress usando il plugin shortcode e il relativo template tag.

Con lo shortcode, è possibile creare una pagina e impostarla come pagina di registrazione ufficiale del sito. È inoltre possibile utilizzare gli shortcode all'interno di un post in modo che l'utente possa iscriversi al sito dopo aver letto uno degli articoli.

Se si desidera aggiungere il modulo di registrazione nella sidebar o una posizione specifica nel tuo sito Web, è possibile modificare il tema  WordPress, inserendo il template tag nella posizione desiderata.

Prima di iniziare a costruire il plugin del modulo di registrazione, vale la pena notare che il nome utente, password e campo email sono necessari.

Dobbiamo seguire questa regola quando scriviamo la funzione di convalida.

Opzione Premium

Questo tutorial vi insegnerà a costruire il plugin da zero, ma se state cercando una soluzione rapida, plug-and-play, provate il plugin WordPress Registration Form su Envato Market. È possibile impostare una vasta gamma di campi di registrazione con controllo di convalida. Una volta completata la registrazione, viene inviata un'e-mail al nuovo membro con i dettagli del login. I template delle email possono essere modificati per la registrazione, la modifica della password, ecc.

WordPress Registration Form plugin on Envato Market
Il plugin WordPress Registration Form su Envato Market

Un'altra opzione è semplicemente effettuare un ordine su Envato Studio. È possibile scegliere la persona giusta tra una vasta gamma di esperti sviluppatori di plugin di WordPress. Quindi si invia il brief e gli sviluppatori creano il vostro plugin entro il termine concordato.

Ad esempio, Alisaleem252 svilupperà un plugin WordPress personalizzato che sarà compatibile con l'ultima versione di WordPress e altri plugin nel repository di Wordpress secondo le vostre richieste. 

Si otterrà:

  • un widget personalizzato se è necessario
  • shortcode personalizzati se sono necessari
  • custom post type se necessari
  • servizio affidabile
Custom WordPress Plugin Development
Sviluppo di Plugin WordPress personalizzato

Il servizio completo costa solo $300, e il vostro plugin sarà pronto in 10 giorni. Alisaleem252 ha un raiting di approvazione del 98% dai clienti precedenti. Quindi perché non provare il suo popolare servizio di Custom WordPress Plugin Development!

Costruire il Plugin

Detto questo, iniziamo con la codifica del plugin. In primo luogo, includere l'header del plugin.

Creiamo poi una funzione PHP che contiene il codice HTML del modulo di registrazione.

Avete notato che il campo di registrazione viene passato alla funzione sopra come variabile? Nel codice della funzione, si vedranno le seguenti istanze di codice, ad esempio:

( isset( $_POST['lname'] ) ? $last_name : null )

L'operatore ternario controlla il contenuto dell'array globale $_POST per vedere se il form contiene un valore. Se contiene un valore, popola i campi del modulo con il valore in modo da non far immettere nuovamente il campo input dall'utente.

Un modulo di registrazione non è mai completo fino alla convalida e alla sanificazione dell'input dell'utente. Di conseguenza, si creerà una funzione di convalida di nome registration_validation.

Per alleviare il dolore di convalida, useremo la classe WordPress WP_Error. Seguitemi mentre scriviamo la funzione di convalida:

  1. Creare la funzione e passare il campo di registrazione come l'argomento della funzione.
  2. Creare un'istanza della classe WP_Error e renderla globale quindi si potrà accedere dall'esterno nell'ambito della funzione.
  3. Ricorda: Abbiamo detto che username, password ed e-mail sono obbligatori e non devono essere lasciati vuoti. Per applicare la regola, abbiamo bisogno di controllare se uno qualsiasi di questi campi è vuoto. Se è vuoto, si aggiunge il messaggio di errore alla classe globale WP_Error.
  4. Controllare che il numero di caratteri del nome utente non sia inferiore a 4.
  5. Verificare che il nome utente non sia già registrato.
  6. Utilizzare i servizi della funzione validate_username di WordPress per assicurarsi che il nome utente sia valido.
  7. Assicurarsi che la password immessa dall'utente non sia meno di 5 caratteri.
  8. Verificare se l'email inserita è un indirizzo email valido.
  9. Verificare se l'email è già registrata.
  10. Se il campo sito Web viene compilato, controllare se è valido.
  11. Infine, dobbiamo scorrere gli errori nella nostra istanza  WP_Error e visualizzare il relativo errore.
    Abbiamo finito di codificare la funzione di verifica.

Successivamente è la funzione complete_registration() del plugin che gestisce la registrazione degli utenti.
La registrazione dell'utente viene eseguita dalla funzione wp_insert_user che accetta un array con i dati utente.

Nella funzione sopra complete_registration() abbiamo fatto le istanze $reg_errors WP_Error e la variabile dei campi del modulo globale così possiamo accedere alla variabile nell'ambito globale.

Quindi controlliamo se l'istanza di gestione degli errori $reg_errors contiene errori. Se nessun errore viene trovato, procediamo compilando l'array $userdata e inseriamo i dettagli di registrazione dell'utente nel database di WordPress e visualizziamo un Messaggio di Registrazione Completa con un link alla pagina di login.

La prossima, è la super funzione custom_registration_function() che inserisce l'uso di tutte le funzioni che abbiamo creato sopra.

Permettetemi di spiegare il codice della funzione custom_registration_function().

In primo luogo, determiniamo se il modulo è stato inviato controllando se $_POST['submit'] è impostato. Se il modulo è stato inviato, viene chiamata la funzione registration_validation per convalidare che l'utente ha inviato modulo.

Abbiamo quindi a sterilizzare i dati del modulo e impostiamo i dati in una variabile chiamata dopo il campo modulo. Infine, chiamiamo complete_registration per registrare l'utente.

Abbiamo bisogno di chiamare la funzione registration_form per visualizzare il modulo di registrazione.

Ricordate che ho detto che ci accingiamo a fornire il supporto shortcode per il plugin di registrazione? Di seguito è riportato il codice shortcode.

A questo punto, abbiamo finito di codificare il plugin. Ecco un'immagine che mostra come il modulo di registrazione dovrebbe apparire.

Si noti che potrebbe non avere lo stesso aspetto sul tuo sito WordPress in base allo stile CSS.

Utilizzo del plugin

Per implementare il plugin in una pagina o un post di WordPress, è possibile usare lo shortcode [cr_custom_registration].

Per implementare il modulo di registrazione in un punto specifico del vostro tema, aggiungere il seguente template tag - <?php custom_registration_function(); ?>.
È possibile scaricare il plugin dagli allegati di questo articolo.

Riepilogo

In questo articolo, abbiamo visto il processo di creazione di un plugin che aggiunge un modulo di registrazione personalizzato in WordPress. È possibile estendere ulteriormente il modulo di registrazione per includere campi supplementari quali ruolo utente, account di messaggistica istantanea AOL, ma assicurarsi che il campo modulo sia un meta dato valido per wp_insert_user.

Se avete eventuali domande e suggerimenti, fatemelo sapere nei commenti!

Ricordate che se avete faticato a seguire questo tutorial e si desidera una soluzione semplice, potete usare il plugin WordPress Registration Form sul mercato di Envato.

Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.