Una guida per principianti a Titan Framework aggiungere un'opzione di tipo Multicheck

Le opzioni checkbox, radio e select type consentono agli utenti di effettuare una singola scelta tra una serie di scelte predefinite. Che dire di quando è necessario fornire a un utente finale la possibilità di fare più di una scelta? 

Questo è esattamente ciò che il Multicheck l'opzione type fa in Titan Framework. Oggi, ho intenzione di mostrare come è possibile aggiungere un'opzione di tipo multicheck tramite Titan Framework in un pannello di amministrazione personalizzato, una meta-box o all'interno del customizer del tema.

L'opzione di tipo Multicheck in Titan Framework

UN Multicheck l'opzione type in Titan Framework consente di creare più checkbox che possono essere abilitate o disabilitate contemporaneamente. Ecco come appare:

I parametri di impostazione supportati da questa opzione sono:

  • nome: Questo parametro assegna il nome visualizzato di a Multicheck tipo opzione.
  • id: È un nome univoco che recupera i valori delle opzioni salvate.
  • disc: Aggiunge una breve descrizione con il nome dell'opzione.
  • predefinito(Facoltativo) Questo parametro ha una matrice di valori che sono abilitati di default.
  • opzioni: (Facoltativo) Questo è un array associativo contenente il valore-label coppia di opzioni che appaiono come checkbox.

Gli ultimi due parametri, predefinito e opzioni, siamo schieramento, mentre il resto lo sono stringa per tipo.

Contenitori disponibili per l'opzione di tipo Multicheck

I contenitori in cui è possibile aggiungere questa opzione sono: 

  • Pannello di Amministrazione
  • Schede di amministrazione
  • Metabox
  • Sezione di personalizzazione del tema

Il Multicheck l'opzione type viene aggiunta seguendo un formato generale:

  • Ottieni un'istanza tramite il getInstance () funzione.
  • Creare un'opzione tramite il createOption () funzione.
  • Ottieni i valori salvati tramite getOption () funzione. 

Vuoi scoprire come vengono creati questi contenitori con Titan Framework? Leggi gli articoli precedenti di questa serie. 

Creazione di un'opzione di tipo Multicheck all'interno di un pannello di amministrazione

Esempio di dichiarazione

Creiamo prima questa opzione all'interno di un pannello di amministrazione.

createOption (array ('id' => 'aa_multicheck_opt', // L'ID che verrà utilizzato per ottenere il valore di questa opzione 'type' => 'multicheck', // Tipo di opzione che stiamo creando 'name' => 'My Multicheck Option', // Nome dell'opzione che verrà visualizzata nel pannello di amministrazione 'desc' => 'Questa è la nostra opzione', // Descrizione dell'opzione che verrà visualizzata nel pannello di amministrazione 'opzioni' = > array (// Array associativo di coppie di valori-etichetta contenenti opzioni 'aa_hdr_logo' => 'Mostra logo intestazione', 'aa_hdr_bg_img' => 'Mostra intestazione immagine di sfondo', 'aa_hdr_clr_overlay' => 'Consenti sovrapposizione colore intestazione'), 'default' => array ('aa_hdr_logo', 'aa_hdr_bg_img')));

Ho usato il createOption () funzione nella riga n. 8 per aggiungere a Multicheck digita l'opzione in un pannello di amministrazione personalizzato $ aa_panel. C'è una lista di parametri che ho menzionato, cioè. nome, id, tipo, opzioni, desc e predefinito. L'ID della mia opzione è aa_multicheck_opt; assicurati che ogni ID che aggiungi sia unico. 

Il 'opzioni' il parametro nella riga # 14 occupa un array associativo. Contiene valore-label accoppiamenti. Ogni coppia indica un'opzione separata che appare come una casella di controllo. Quindi, ho definito tre coppie di valori-etichetta, il che significa tre opzioni.

L'etichetta di ciascuna opzione è unica. Pertanto, le etichette aa_hdr_logoaa_hdr_bg_imgaa_hdr_clr_overlay creare opzioni denominate 'Mostra il logo dell'intestazione''Mostra l'immagine di sfondo dell'intestazione' e 'Consenti sovrapposizione colore intestazione'rispettivamente.

Nell'immagine sopra, c'è un pannello di amministrazione Opzioni ordinate che contiene a Multicheck opzione denominata La mia opzione Multicheck. Notare che le prime due opzioni sono abilitate a causa delle impostazioni di default (che ho impostato alla riga 16).

Esempio di utilizzo

Prendiamo i valori delle opzioni salvate.

getOption ('aa_multicheck_opt'); / ** * * Stampa dei valori salvati per un pannello di amministrazione * * / var_dump ($ aa_multicheck_opt_val); 

Alla riga n. 3, ho aggiunto un'istanza univoca tramite il getInstance () funzione. Si consiglia di utilizzare il nome del tema come parametro qui. Quindi, nella riga n. 6, ho usato il getOption () funzione - che recupera i valori salvati - registrando l'ID opzione aa_multicheck_opt come parametro Dopo di ciò, ho salvato il suo risultato in una variabile $ aa_multicheck_opt_val. Fino a questo punto, le impostazioni di input dell'utente vengono salvate in questa variabile.

Ora stamperemo i risultati salvati sul front-end. Siccome questa opzione occupa un array associativo, userò il metodo più basilare per stampare i contenuti dell'array, cioè il var_dump () comando (riga # 15).

Se visualizzi l'anteprima del front-end, sembra che questo:

Le impostazioni predefinite sono state stampate in modo assolutamente corretto. Hai l'idea di cosa puoi fare con questa opzione.

Aggiungiamo alcune linee di codice che stampano un output se le impostazioni sono cambiate dinamicamente. Ho sostituito la riga 15 del codice sopra con queste linee. 

"; else echo" Show Header Logo non era abilitato.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_val)) echo" Mostra immagine di sfondo dell'intestazione abilitata.
"; else echo" Show Header Background Image non è stato abilitato.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_val)) echo" Consenti overlay colore intestazione abilitato.
"; else echo" Consenti sovrapposizione colore intestazione non abilitato.
";?>

Qui sto usando il in_array () funzione dentro se altro controllare le dichiarazioni. Qui vengono eseguiti tre diversi controlli per l'output.

Righe da 2 a 6:

  • Se l'etichetta aa_hdr_logo esiste all'interno dell'array $ aa_multicheck_opt_val, stampare 'Mostra il logo dell'intestazione era abilitato.'
  • Altrimenti, stampa 'Mostra il logo dell'intestazione non era abilitato.'

Righe da 7 a 11:

  • Se l'etichetta aa_hdr_bg_img esiste all'interno dell'array $ aa_multicheck_opt_val, stampare 'Consenti sovrapposizione colore intestazione abilitata.'
  • Altrimenti, stampa 'Consenti sovrapposizione colore intestazione non abilitata.'

Righe da 13 a 17:

  • Se l'etichetta aa_hdr_clr_overlay esiste all'interno dell'array $ aa_multicheck_opt_val, stampare 'Mostra immagine di sfondo dell'intestazione abilitata.'
  • Altrimenti, stampa 'Mostra immagine di sfondo intestazione non abilitata.'

Visualizzazione del risultato sul front-end

Andiamo prima con le impostazioni predefinite, cioè le prime due caselle di controllo sono abilitate.

Il front-end deve stampare le seguenti righe in questo modo:

Creazione di un'opzione di tipo Multicheck in una scheda di amministrazione

Esempio di dichiarazione

Successivamente aggiungerò questa opzione in una scheda di amministrazione.

createOption (array ('id' => 'aa_multicheck_opt_in_tab', // L'ID che verrà utilizzato per ottenere il valore di questa opzione 'type' => 'multicheck', // Tipo di opzione che stiamo creando 'name' => 'My Multicheck Option', // Nome dell'opzione che verrà visualizzata nel pannello di amministrazione 'desc' => 'Questa è la nostra opzione', // Descrizione dell'opzione che verrà visualizzata nel pannello di amministrazione 'opzioni' = > array (// Array associativo di coppie di valori-etichetta contenenti opzioni 'aa_hdr_logo' => 'Mostra logo intestazione', 'aa_hdr_bg_img' => 'Mostra intestazione immagine di sfondo', 'aa_hdr_clr_overlay' => 'Consenti sovrapposizione colore intestazione'), 'default' => array ('aa_hdr_logo', 'aa_hdr_bg_img')));

Qui ho aggiunto lo stesso Multicheck inserisci l'opzione all'interno di una scheda di amministrazione $ aa_tab1. L'ID univoco dell'opzione è aa_multicheck_opt_in_tab. Il resto delle impostazioni dei parametri sono gli stessi.

UN Multicheck esiste un'opzione di tipo all'interno Scheda 1 del pannello di amministrazione Opzioni Neat 2.

Esempio di utilizzo

Ora otterrò i valori salvati da una scheda di amministrazione.

getOption ('aa_multicheck_opt_in_tab'); / ** * * Stampa dei valori salvati per una scheda di amministrazione * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_tab_val)) echo "Mostra il logo dell'intestazione abilitato.
"; else echo" Show Header Logo non era abilitato.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_tab_val)) echo" Mostra immagine di sfondo dell'intestazione abilitata.
"; else echo" Show Header Background Image non è stato abilitato.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_tab_val)) echo" Consenti sovrapposizione colore intestazione abilitata.
"; else echo" Consenti sovrapposizione colore intestazione non abilitato.
";

Questo codice è abbastanza simile a quello che ho scritto nel caso di un pannello di amministrazione. Puoi provarlo da solo. Permettetemi di riassumere i passaggi:

  • Prima di tutto, prendi un'istanza nella riga n. 3 tramite getInstance () funzione.
  • Quindi utilizzare il getOption () funzione per ottenere i valori salvati nella riga n.
  • Registrare l'ID opzione e salvare i risultati all'interno della variabile $ aa_multicheck_opt_in_tab_val.
  • Infine, usa questa variabile all'interno del in_array () funzione (righe da 15 a 30) per stampare i risultati desiderati.

Visualizzazione del risultato sul front-end

Attiva tutte le caselle di controllo come impostazioni demo. Il front-end ha questo aspetto:

Creazione di un'opzione di tipo Multicheck all'interno di un metabox

Esempio di dichiarazione

Ora creerò un Multicheck digita l'opzione in un metabox.

createOption (array ('id' => 'aa_multicheck_opt_in_metabox', // L'ID che verrà utilizzato per ottenere il valore di questa opzione 'type' => 'multicheck', // Tipo di opzione che stiamo creando 'name' => 'My Multicheck Option', // Nome dell'opzione che verrà visualizzata 'desc' => 'Questa è la nostra opzione', // Descrizione dell'opzione che verrà visualizzata 'options' => array (// Array associativo di coppie di valori-etichetta contenenti le opzioni 'aa_hdr_logo' => 'Mostra logo intestazione', 'aa_hdr_bg_img' => 'Mostra immagine sfondo intestazione', 'aa_hdr_clr_overlay' => 'Consenti sovrapposizione colore intestazione'), 'default' => matrice (' aa_hdr_logo ',' aa_hdr_bg_img ')));

Ho aggiunto questa opzione con un ID univoco aa_multicheck_opt_in_metabox all'interno di un metabox $ aa_metbox.

Nell'immagine sopra, c'è una schermata di modifica della pagina e alla fine è possibile individuare a Multicheck opzione denominata La mia opzione Multicheckin un metabox.

Esempio di utilizzo

Utilizzare il seguente codice per recuperare i valori salvati.

getOption ('aa_multicheck_opt_in_metabox', get_the_ID ()); / ** * * Stampa dei valori salvati per un Metabox * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_metabox_val)) echo "Mostra il logo dell'intestazione abilitato.
"; else echo" Show Header Logo non era abilitato.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_metabox_val)) echo" Mostra immagine di sfondo dell'intestazione abilitata.
"; else echo" Show Header Background Image non è stato abilitato.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_metabox_val)) echo" Consenti sovrapposizione colore intestazione abilitata.
"; else echo" Consenti sovrapposizione colore intestazione non abilitato.
";?>

Il codice utilizza nuovamente le funzioni per ottenere un'istanza e valori salvati. Ma nella riga 6 c'è un parametro aggiuntivo, il get_the_ID () funzione, che ottiene i valori dall'ID di qualsiasi pagina o post. Alla fine, ho usato lo stesso se altro controllare le dichiarazioni.

Visualizzazione del risultato sul front-end

Questa volta, abilitiamo la prima e l'ultima opzione. Ecco lo screenshot del front-end.

Creazione di un'opzione di tipo Multicheck all'interno di una sezione di personalizzazione del tema

Esempio di dichiarazione

Infine, aggiungerò questa opzione in una sezione di personalizzazione del tema.

createOption (array ('id' => 'aa_multicheck_opt_in_sec', // L'ID che verrà utilizzato per ottenere il valore di questa opzione 'type' => 'multicheck', // Tipo di opzione che stiamo creando 'name' => 'My Multicheck Option', // Nome dell'opzione che verrà visualizzata 'desc' => 'Questa è la nostra opzione', // Descrizione dell'opzione che verrà visualizzata 'options' => array (// Array associativo di coppie di valori-etichetta contenenti le opzioni 'aa_hdr_logo' => 'Mostra logo intestazione', 'aa_hdr_bg_img' => 'Mostra immagine sfondo intestazione', 'aa_hdr_clr_overlay' => 'Consenti sovrapposizione colore intestazione'), 'default' => matrice (' aa_hdr_logo ',' aa_hdr_bg_img ')));

Ho aggiunto un Multicheck inserisci un'opzione all'interno di una sezione di personalizzazione del tema $ aa_section1. Il suo ID è aa_multicheck_opt_in_sec.

Nell'immagine, c'è una sezione di personalizzazione chiamata La mia sezione, in cui c'è un elenco di opzioni di checkbox.

Esempio di utilizzo

Utilizzare questo codice per ottenere i valori da una sezione di personalizzazione.

getOption ('aa_multicheck_opt_in_sec'); / ** * * Stampa dei valori salvati per una sezione di personalizzazione * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_sec_val)) echo "Mostra il logo dell'intestazione abilitato.
"; else echo" Show Header Logo non era abilitato.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_sec_val)) echo" Mostra immagine di sfondo dell'intestazione abilitata.
"; else echo" Show Header Background Image non è stato abilitato.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_sec_val)) echo" Consenti sovrapposizione colore intestazione abilitata.
"; else echo" Consenti sovrapposizione colore intestazione non abilitato.
";?>

Questo codice è ancora abbastanza simile a quello che ho usato per altri tipi di contenitori. Solo l'ID e i nomi delle variabili sono diversi.

Visualizzazione del risultato sul front-end

Ho attivato solo la prima opzione. Le modifiche possono essere osservate in modalità anteprima live:

Conclusione

Quindi questo è tutto. È possibile integrare il Multicheck digita un'opzione nel tuo progetto di sviluppo web per consentire agli utenti di abilitare più funzioni tematiche in pochi clic. 

Ricorda che ti ho dato un esempio nel tutorial dell'opzione type checkbox, che puoi consentire a un utente finale di abilitare / disabilitare qualsiasi parte di single.php. Lo stesso esempio può essere applicato qui, con un po 'di contesto. Quindi, se stai fornendo opzioni utente relative a un'area particolare come l'intestazione, dovresti usare il multicheck per evitare opzioni extra.

Ci sono alcuni altri tipi di opzioni che possono essere chiamate le derivate di questo tipo. Ne parlerò nei miei prossimi articoli. Quindi prova questo tutorial e fammi sapere le tue opinioni su di esso nei commenti o su Twitter.