WordPress: impostare, salvare e usare le opzioni dei plugin

Un tutorial che spiega come definire le opzioni di un plugin di WordPress, la loro pagina e voce nel menu amministrativo.

Supponiamo di voler creare un plugin per WordPress. Ovviamente questo plugin dovrà avere delle opzioni definite dall’utente. In questo articolo vedremo come impostare una pagina di opzioni e leggere queste opzioni.

Impostare la pagina di opzioni

La pagina di opzioni non viene caricata automaticamente da WordPress, ma ha bisogno di essere definita nel plugin (in genere all’inizio) all’interno del suo file principale (che chiameremo mio-plugin.php):

La voce Mio Plugin verrà ora aggiunta da WordPress al menu amministrativo Impostazioni. Quindi dobbiamo definire la pagina chiamata options.php.

Definire la pagina delle opzioni

Una pagina delle opzioni non contiene altro che un form con dei campi che definiscono le opzioni del nostro plugin. WordPress salva e aggiorna queste opzioni nel suo database.

Gli attributi name dei campi sono fondamentali, in quanto danno il nome all’opzione selezionata. Per esempio il seguente campo di testo:

definisce un’opzione il cui nome è test e che può essere usata dal nostro plugin tramite la funzione di WordPress get_option():

Il nostro plugin può quindi compiere delle scelte o delle azioni in base al valore delle opzioni:

Il file principale del plugin, che contiene le sue azioni principali, e la pagina delle opzioni sono legate strettamente da WordPress in modo che il nostro codice definito nel file principale può sempre avere accesso alle opzioni definite dall’utente.

Vediamo ora un esempio pratico: definiremo due opzioni di base e le salveremo.

L’azione del form deve puntare alla stessa pagina. Una buona pratica è quella di filtrare l’input per evitare problemi di sicurezza:

Nei campi dei form è importante impostare un valore predefinito per evitare che l’utente lasci vuoti i campi:

La parte conclusiva del codice del form è standard, nel senso che viene utilizzata in tutte le pagine di opzioni:

La marcatura usata all’interno del form usa degli attributi HTML che possiedono già degli stili assegnati da WordPress. Potete comunque scegliere la marcatura che preferite, fermo restando il fatto che dovrete definire degli stili ad hoc.

Nota

Anche per i temi si usa la stessa procedura per la definizione delle opzioni.