✅ Notizie, temi, plugin WEB e WordPress. Qui condividiamo suggerimenti e le migliori soluzioni per siti web.

Codifica per campi personalizzati avanzati: un’introduzione

20

Advanced Custom Fields (ACF) è un plugin per WordPress che è un ottimo strumento per impostare meta post personalizzati. Ti consente di creare e configurare facilmente meta box complessi e di facile utilizzo con tutti i tipi di campi e impostazioni per tipi di post, tassonomia, schermate utente e pagine di opzioni. Ed è super intuitivo per gli sviluppatori.

Ora è possibile configurare manualmente le proprie meta box o impostazioni, ma per impostazioni più complesse è necessario codificare un po’, inclusi lo stile, Javascript, la convalida e la gestione del salvataggio. Immagina ad esempio di scrivere manualmente un ripetitore con un gruppo di impostazioni, una selezione multipla di post in base a una determinata query. O gestire la visualizzazione delle impostazioni che dipendono da determinate variabili come il termine o il modello di pagina assegnato (che richiede Javascript). Advanced Custom Fields gestisce tutto questo e lo fa magnificamente.

Tieni presente che i campi personalizzati avanzati non genereranno effettivamente nessuno dei tuoi meta personalizzati nei tuoi modelli. L’output o l’esecuzione di qualcosa in base ai campi e alle impostazioni configurati con ACF spetta a te come sviluppatore da gestire. Ma questo è facilmente realizzabile utilizzando uno qualsiasi dei metodi di ACF. È anche bello sapere che ACF utilizza la meta funzionalità di base di WordPress (post, termine, utente). Ciò significa che in realtà salva, ad esempio, le impostazioni per i post come post meta, che puoi ottenere utilizzando funzioni di base come get_post_meta().

I campi personalizzati avanzati sono disponibili in una versione gratuita e in una versione Pro a pagamento. La versione gratuita è più che sufficiente per la maggior parte dei casi, ma nella versione Pro ottieni alcune funzionalità aggiuntive come un campo ripetitore, un campo galleria, blocchi Gutenberg (vedi più avanti) e la possibilità di utilizzare ACF per configurare il tuo amministratore personalizzato pagine delle opzioni. ACF è anche così popolare che puoi facilmente trovare estensioni di alta qualità per tutto ciò che il core ACF non copre da solo.

Campi personalizzati avanzati: la parte amministrativa

Quando installi il plug-in Advanced Custom Fields, otterrai un nuovo menu di amministrazione per "Custom Fields". Qui puoi impostare e configurare le tue "meta box" o gruppi di impostazioni.

All’interno di un gruppo puoi impostare tutti i campi che vuoi di diversi tipi. I più comuni sono input di testo, textarea, richtext editor, file, image, true/false (toggler), caselle di controllo, pulsanti di opzione e casella di selezione. Altri modi comuni sono molteplici modi per scegliere i post, scegliere la tassonomia, selezionare gli utenti, datepicker, colorpicker, Google Maps e molti, molti altri. A seconda del tipo di campo scelto, ottieni una gamma di opzioni aggiuntive per personalizzare il campo. Puoi anche aggiungere logica condizionale a qualsiasi campo. La logica condizionale serve per nascondere o mostrare i campi a seconda di altre opzioni all’interno del gruppo.

Per ogni gruppo di impostazioni è possibile definire in quali casi devono apparire queste impostazioni. Esempi sono la modifica di post, un termine di tassonomia o la modifica di un utente. Puoi personalizzare ulteriormente la visibilità delle tue impostazioni, ad esempio sul tipo di post. Oppure se a un post è assegnato un determinato termine o modello di pagina, se un post è di un determinato autore, se il ruolo dell’utente è così o così, il ruolo dell’utente attualmente connesso o se la pagina è una pagina padre o no. Puoi anche personalizzare dove dovrebbe apparire la meta box. Tuttavia, questa funzionalità è in qualche modo ridotta ora con il nuovo editor Gutenberg.

Codifica per campi personalizzati avanzati: un'introduzione

Creazione di un gruppo

Codifica per campi personalizzati avanzati: un'introduzione

Impostazioni per un singolo campo

Campi personalizzati avanzati: la parte del codice

Diamo un’occhiata alla parte più interessante: come utilizzare i campi personalizzati avanzati per codice. Come accennato in precedenza, ACF è super intuitivo per gli sviluppatori e offre un’ampia gamma di personalizzazione.

Ottenere i valori e inviarli all’output nei modelli è facile utilizzando i metodi di ACF. Ad esempio the_field('your_meta_key')per richiamarlo direttamente o get_field('your_meta_key')per memorizzarlo in una variabile PHP. Fornisci l’ID post come secondo argomento se devi recuperare i dati al di fuori del ciclo. Vai tranquillo. Potresti usare get_post_meta(), ma si consiglia di utilizzare i metodi di ACF, poiché ACF può trasformare il valore in qualcosa di più significativo prima di restituirlo a te.

Un’altra cosa di cui dovresti essere a conoscenza è lo strumento di esportazione all’interno di ACF. Puoi esportare i gruppi creati in due formati; un file JSON scaricabile o un codice PHP puro. Il file JSON è utile se devi esportare le impostazioni tra server di prova e live o un altro WordPress. L’esportazione in PHP puro ti dà la possibilità di incollarlo direttamente nel tuo tema o nei file PHP del plugin.

Come potresti concludere da questo; puoi usare il codice PHP, scrivendolo manualmente o esportandolo dopo averlo configurato in admin, per aggiungere i tuoi gruppi e campi. Ciò consente un maggiore controllo e modi per generare scelte personalizzate.

Ma aspetta, c’è di più! ACF offre anche un’ampia gamma di azioni e filtri per personalizzare ulteriormente i campi oi loro valori. Sono disponibili hook per il salvataggio o il rendering di un campo, nonché hook per la registrazione di gruppi in base al codice (menzionato sopra) e filtri per la personalizzazione dei valori, delle impostazioni o delle scelte del campo prima del salvataggio o prima del rendering. Puoi inoltre specificare se il filtro deve interessare tutti i campi, i campi di un determinato tipo oi campi di una determinata meta chiave. Tutti i ganci e i filtri sono preceduti da acf/.

Dai un’occhiata alla pagina della documentazione di ACF ; fare clic su "Funzioni", "Azioni" o "Filtri" per una panoramica. Troverai ottimi tutorial e guide anche su questo sito.

Una nota su Advanced Custom Fields e Gutenberg

La creazione di blocchi Gutenberg personalizzati al momento è piuttosto scoraggiante. La documentazione non è del tutto a posto, le modifiche si verificano spesso e richiede un po’ di conoscenza di Javascript per programmare. Preferibilmente è necessaria la conoscenza di React e di come impostare il compilatore da JSX/ES6 con webpack e Babel.

Tuttavia, nella versione 5.8 ACF Pro ha introdotto una funzione per impostare un gruppo di campi come blocco Gutenberg, consentendo di aggiungere blocchi personalizzati esclusivamente con codice ACF e PHP. Nessuna conoscenza Javascript necessaria!

Tutto quello che devi fare è configurare i gruppi in admin o tramite codice come al solito. Ma poi definendo la loro posizione come blocco Gutenberg. Non resta che aggiungere del codice PHP per registrarli come blocco Gutenberg personalizzato con acf_register_block(). Per quella funzione si definisce un callback a una funzione PHP o a un file modello che è responsabile del rendering dell’output del blocco. Scrivi questa funzione o parte del modello completamente in PHP e usi metodi familiari come get_field()per ottenere i valori di impostazione.

Codifica per campi personalizzati avanzati: un'introduzione

Come appare un blocco ACF nell’editor di Gutenberg

Resta sintonizzato nella categoria Campi personalizzati avanzati per tutorial su come utilizzare questo plugin!

Fonte di registrazione: awhitepixel.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More