Vuoi sbloccare ancora più potenza organizzativa in WordPress? Prova ad aggiungere campi personalizzati ai tuoi metadati per le tue tassonomie personalizzate.
Le tassonomie personalizzate ti consentono di organizzare i tuoi contenuti oltre categorie e tag. Ma a volte, troviamo utile aggiungere dettagli e campi aggiuntivi per descriverli, ed è qui che entrano in gioco i campi personalizzati dei metadati.
In questo articolo, ti mostreremo come aggiungere campi personalizzati dei metadati alle tue tassonomie personalizzate in WordPress.

Quando dovresti aggiungere campi personalizzati dei metadati a una tassonomia personalizzata?
Quando crei nuovi contenuti sul tuo sito web WordPress, puoi organizzarlo utilizzando le due tassonomie predefinite, categorie e tag.
Alcuni siti web beneficiano dell'uso di tassonomie personalizzate. Queste ti permettono di ordinare i tuoi contenuti in modi aggiuntivi.
Ad esempio, un sito web che pubblica recensioni di libri potrebbe aggiungere le tassonomie 'Materie' e 'Autori' in modo che i visitatori possano trovare rapidamente le recensioni che li interessano.
Per maggiori informazioni, consulta la nostra guida su come creare tassonomie personalizzate in WordPress.
Ogni tassonomia ha solo tre o quattro campi per impostazione predefinita: nome, slug, genitore (se gerarchica) e descrizione.

A volte è utile aggiungere campi aggiuntivi per descrivere meglio la tassonomia. Ad esempio, potresti aggiungere un campo 'anno di nascita' a una tassonomia 'autori'.
Detto questo, ecco come aggiungere campi meta personalizzati alle tassonomie personalizzate in WordPress.
Passaggio 1: Aggiungere campi meta personalizzati alle tassonomie personalizzate in WordPress
Innanzitutto, devi installare e attivare il plugin Advanced Custom Fields. Per saperne di più, consulta la nostra guida passo passo su come installare un plugin WordPress.
Successivamente, vai alla pagina Campi personalizzati » Aggiungi nuovo. Qui puoi aggiungere un gruppo di campi che contiene uno o più nuovi campi.
Ti verrà chiesto di dare un titolo al gruppo di campi, che verrà visualizzato insieme ai nuovi campi quando aggiungi o modifichi la tassonomia. In questo tutorial, vogliamo aggiungere un campo personalizzato alla tassonomia Autori, quindi chiameremo il gruppo di campi 'Dettagli Autore'.

Una volta fatto ciò, dovresti fare clic sul pulsante '+ Aggiungi campo' per aggiungere un campo. Apparirà un nuovo modulo in cui puoi compilare i dettagli del nuovo campo.
Una volta inserita un'etichetta per il campo, il nome del campo verrà creato automaticamente e potrai modificarlo se lo desideri. Dovrai utilizzare il nome del campo più avanti nel tutorial, quindi prendine nota.

Ora dovresti compilare gli altri dettagli per il campo, come il tipo di campo, le istruzioni per i tuoi autori che compileranno il modulo e se questo campo è obbligatorio. Altre opzioni non mostrate nello screenshot includono testo predefinito, testo segnaposto, limite di caratteri e altro ancora.
Se desideri aggiungere un secondo campo, fai clic sul pulsante ‘+ Aggiungi campo’ e ripeti il processo. Altrimenti, scorri semplicemente verso il basso fino alla sezione Posizione.
Qui puoi creare regole che descrivono dove visualizzare il nuovo campo. Dovresti selezionare ‘Tassonomia’ dal primo menu a discesa e lasciare il campo centrale come ‘è uguale a’. Infine, seleziona la tassonomia personalizzata corretta per l'ultimo campo. In questo tutorial, selezioneremo ‘Autore’.

Se vuoi aggiungere questo campo a un'altra tassonomia, puoi fare clic sul pulsante ‘Aggiungi gruppo di regole’ e ripetere il passaggio.
Ora dovresti regolare qualsiasi altra impostazione nella pagina. Lasceremo semplicemente i valori predefiniti. Una volta terminato, dovresti scorrere fino in cima alla pagina e fare clic sul pulsante ‘Pubblica’.

Congratulazioni, hai aggiunto con successo un campo meta personalizzato a una tassonomia personalizzata in WordPress. Ma hai ancora del lavoro da fare.
Passaggio 2: Aggiungere dati al nuovo campo meta personalizzato
Sebbene la tassonomia abbia un nuovo campo, non contiene ancora alcun dato. Dovresti prenderti del tempo per farlo ora.
Nel nostro esempio, dobbiamo inserire l'anno di nascita per ogni autore. Per farlo, dobbiamo navigare su Post » Autori e fare clic sul nome dell'autore che desideriamo modificare.

Dopodiché, possiamo inserire i dati nel nuovo campo. In questo caso, inseriremo l'anno di nascita di quell'autore. Non dimenticare di fare clic sul pulsante 'Aggiorna' per salvare i nuovi dati.

Dovresti seguire gli stessi passaggi sul tuo sito web per aggiungere dati alla tua tassonomia personalizzata.
Una volta terminato, c'è ancora un passaggio da fare. Sebbene tu possa vedere il campo personalizzato quando sei connesso alla tua area di amministrazione di WordPress, i visitatori del tuo sito web non potranno vederlo. Dovrai aggiungere il campo alla pagina di archivio della tassonomia personalizzata.
Passaggio 3: Visualizzare un campo meta personalizzato nella pagina di archivio della tassonomia
In questo passaggio, dovrai aggiungere codice ai tuoi file del tema. Se non l'hai mai fatto prima, consulta la nostra guida per principianti su come inserire snippet dal web in WordPress.
La prima cosa che devi fare è entrare nella cartella del tuo tema e cercare il file di archivio della tua tassonomia. Avrà un nome come taxonomy-NOMETUOTASSonomia.php.
Ad esempio, se hai una tassonomia personalizzata chiamata ‘autori’, allora devi cercare un file chiamato taxonomy-authors.php.
Se non vedi quel file, cerca archive.php. Dovrai creare una copia di quel file e nominarla come descritto sopra.
Nota: Se il tuo tema non include archive.php, allora probabilmente stai usando un framework per temi WordPress e dovrai creare l'archivio della tassonomia manualmente. Un buon punto di partenza per imparare a creare file di archivio è la nostra guida su come creare pagine di archivi personalizzate in WordPress.
Ora devi aggiungere il seguente codice all'archivio della tassonomia, subito prima del loop:
<?php
// get the current taxonomy term
$term = get_queried_object();
// get the taxonomy meta field
$taxonomymetafield = get_field('FIELDNAME', $term);
// display the taxonomy meta field
echo $taxonomymetafield;
?>
Nota che devi sostituire ‘NOME_CAMPO’ con il nome effettivo del campo che hai creato sopra. Ricorda, ti abbiamo chiesto di prenderne nota.
Nel nostro esempio, il nome del campo è ‘anno_di_nascita’. Aggiungeremo anche una descrizione, in modo che i nostri visitatori comprendano cosa significa il campo. Quindi aggiungeremo il seguente codice al file di archivio della tassonomia taxonomy-authors.php:
<?php
// get the current taxonomy term
$term = get_queried_object();
// get the taxonomy meta field
$taxonomymetafield = get_field('year_of_birth', $term);
// display the taxonomy meta field
echo "Year of birth: ";
echo $taxonomymetafield;
?>
Ecco come appariva quando l'abbiamo testato sul nostro sito demo:

Speriamo che questo tutorial ti abbia aiutato a imparare come aggiungere campi meta personalizzati alle tassonomie personalizzate in WordPress. Potresti anche voler imparare come aggiungere parole chiave e meta descrizioni in WordPress, o dare un'occhiata alla nostra lista di plugin WordPress indispensabili per far crescere il tuo sito.
Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.


Tarek Anandan
Se non riesci a visualizzare i tuoi dati e stai usando una versione recente di WordPress, usa get_term_meta() invece di get_tax_meta().
Subin
ecco il mio codice:
$config = array(
‘id’ => ‘tax_meta_box’, // id della meta box, univoco per ogni meta box
‘title’ => ‘Tax Meta Box’, // titolo della meta box
‘pages’ => array(‘category’), // nome della tassonomia, accetta categorie, post_tag e tassonomie personalizzate
‘context’ => ‘normal’, // dove appare la meta box: normal (predefinito), advanced, side; opzionale
‘fields’ => array(), // elenco dei meta field (possono essere aggiunti tramite array di field)
‘local_images’ => false, // Usa immagini locali o ospitate (immagini della meta box per aggiungere/rimuovere)
‘use_with_theme’ => get_template_directory_uri() . ‘/Tax-Meta-Class/Tax-meta-class’
);
/*
* Inizializza la tua meta box
*/
$my_meta = new Tax_Meta_Class($config);
// Campo immagine
$my_meta->addImage(‘image_field’,array(‘name’=> __(‘La mia immagine ‘,’tax-meta’)));
$my_meta->Finish();
———————————————————————————————————————–
term_id;
$saved_data = get_tax_meta($term_id,’image_field’,true);
echo ”;
echo $term_id; // Stampa ‘1’ che è l’ID della categoria
echo $saved_data; // Non mostra nulla. Chissà perché!!
exit;
?>
James Dower
Sto avendo problemi anche io a ottenere il percorso di un'immagine caricata. Emette solo:
Array
...i campi di testo vanno bene.
Sto usando:
$prefix = ‘ttp_’;
$my_meta->addImage($prefix.’logo_id’,array(‘name’=> __(‘Logo’,’tax-meta’)));
E sulla pagina taxonomy.php:
$logo = get_tax_meta($term->term_id, ttp_logo_id);
Qualcuno può aiutarmi per favore? Ci sto lavorando da ORE!
James Dower
...e qualcuno può per favore spiegare come visualizzare i campi repeater?!
James Dower
Per tutti coloro che faticano a farlo leggere, ho trovato un apostrofo vagante, questo funziona per me:
$data = get_tax_meta($term->term_id, ba_text_field_id);
echo $data;
siva
Ciao Team, grazie mille…
Ketan
Ciao,
Ho attivato il plugin. ma non mi mostra dove posso aggiungere un campo tassonomia personalizzato sul lato admin. per favore rispondimi.
Grazie,
Ketan.
Francisco
Thanks a lot this has been very useful!!!!
Ho visualizzato correttamente un campo di testo usando questo codice:
// Ottieni l'ID della tassonomia corretta tramite slug
$term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
// Ottieni i metadati della tassonomia
$saved_data = get_tax_meta($term->term_id,’ba_text_field_id’);
echo $saved_data;
MA HO BISOGNO di visualizzare anche un'immagine, sto usando questo codice php nel mio template:
// Ottieni l'ID della tassonomia corretta tramite slug
$term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
//Ottieni metadati tassonomia
$saved_data = get_tax_meta($term->term_id,’ba_image_field_id’);
echo $saved_data;
But it doesn’t display anything!
Mostra solo una singola parola "array"
Cosa potrebbe esserci di sbagliato?
David Beastall
Grazie per questo, il tutorial sembra incompleto secondo me.
Hemanta Chakladar
Sto cercando anche io.
Hemanta Chakladar
Sono bloccato.
Vedo l'opzione metadati nella categoria di WordPress e non nella mia tassonomia personalizzata. Dove posso aggiungere questa opzione per aggiungere metadati personalizzati nella mia tassonomia personalizzata? Dove è definito?
Marco Panichi
Come aggiungere una casella di controllo multipla per selezionare uno o più utenti?
Ankur
Ciao Marco, hai ricevuto una risposta? Sto cercando la stessa funzionalità.
Joe Chow
grazie mille. Vedo che ci sono un sacco di campi mostrati nella categoria del post. Tuttavia, voglio solo sapere come rendere il codice utilizzabile solo per la categoria di prodotti WooCommerce.
Qualcuno può dare un suggerimento?
Joe
Come si ottengono le informazioni sulla tassonomia su un modello di pagina personalizzato invece che su una pagina taxonomy.php?
Jason Gateman
Grazie per questo tutorial! Come faccio a visualizzare i metadati su una pagina di post personalizzata che ho creato, invece che solo sulla pagina della tassonomia?
AD
Ciao ragazzi,
Per coloro che hanno problemi a visualizzare il contenuto salvato. Usa il prefisso davanti alla chiave.
//Ottieni metadati tassonomia
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
Dovrebbe essere ba_text_field_id (Dato che il prefisso è ba_).
Spero che questo aiuti, saluti.
Dan
Volevo confermare questo commento, poiché può essere piuttosto sconcertante capire perché l'esempio non funziona. Se guardi nel file "Tax meta class" vedrai che in alto Ohad definisce una variabile $prefix che viene aggiunta a ogni funzione di salvataggio.
Quindi, per ottenere il risultato da stampare, devi includere il prefisso. Puoi impostare il prefisso come desideri, incluso "". Non ho idea di cosa stia per "ba_", ma è quello che c'è per impostazione predefinita.
L'esempio dovrebbe leggere:
$saved_data = get_tax_meta($term->term_id,'ba_text_field_id');
Chris
Grazie mille! Funziona benissimo. Mi hai risparmiato un sacco di tempo di codifica.
Ante
Ok, sono bloccato.
//Ottieni l'ID della tassonomia corretta tramite slug
$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
//Ottieni metadati tassonomia
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
Quindi 'taxonomy' è la mia tassonomia personalizzata, diciamo 'project_clients'
'text_field_id' è l'ID del campo di input, è $prefix.'text_area'...
Cos'è 'term' ?????
Steve
Ante,
Hai fatto progressi con questo??
Mi pongo la stessa domanda – ho esaminato molti commenti e pagine che ne parlano, ma non riesco a trovare una soluzione. Qualsiasi aiuto sarebbe apprezzato se hai trovato la risposta.
Aggiungere semplicemente quanto segue al mio file taxonomy.php non funziona:
//Ottieni l'ID della tassonomia corretta tramite slug
$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
//Ottieni metadati tassonomia
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
fp-admin
Sto cercando di aggiungere qualsiasi cosa metta nel WYSIWYG al front-end del sito web. Onestamente non ho idea di cosa sto facendo, ma questo è il mio codice finora:
term_id,’wysiwyg_field_id’);
?>
<a href="”>
ELiane
Ciao,
Ho usato il plugin ma non riesco a ottenere il codice nella mia Taxonomy.php.
Uso questo codice per visualizzare il campo
term_id,'text_field_id');
echo $saved_data;
?> Devo fare qualcos'altro?
Grazie
Supporto WPBeginner
sì, se hai seguito tutte le istruzioni come descritto sopra, allora dovrebbe funzionare.
Amministratore
Tejas Deshmukh
Ciao, grazie in particolare per questa idea. Questo plugin funziona benissimo. Ho aggiunto tre campi extra nell'opzione di aggiunta/modifica di un termine specifico. ma quando creo una categoria in esso, in quel termine, non riesco a salvare il valore per quei tre campi extra. Hai qualche suggerimento?
alexut
Ma come faccio a recuperare i dati dalla pagina archivio? dovresti aggiungerlo anche questo, dato che è una richiesta comune.
Kisshomaru
Brillante! Non hai idea di quanto tempo ho passato a cercare un modo per aggiungere "quantità" ai "prodotti". Non essendo questo un sito di e-commerce, era complicato associare un post di cibo a una tassonomia di ingredienti e non poter modificare il numero di cetrioli per ogni post.
Grazie!
Mike Jackson
Ciao, ho problemi a far funzionare questo. Ho i campi dati visibili nella mia tassonomia personalizzata ma non riesco a richiamare i dati nel mio brand-description.php usando il codice php che hai incollato in fondo al tuo articolo. Non mostra errori, semplicemente non funziona.
Apprezzerei molto qualche ulteriore spiegazione a riguardo, se hai tempo.
Grazie
Mike Jackson
Questa è una scoperta eccezionale! Ci sto provando da qualche settimana. Hai idea di come aggiungere i nuovi campi alle colonne?
Mike Jackson
Anch'io ho problemi a visualizzare qualcosa nella pagina. Ho applicato questo codice e ho dati nei campi, ma non appare nulla sul sito.
term_id,’textarea_field_id’);
echo $saved_data;
?>
Staff editoriale
Questo codice funziona sulla pagina archivio della tassonomia. Se non viene visualizzato, è probabile che il codice non riesca a ottenere l'ID della tassonomia. Almeno questa sarebbe la mia ipotesi.
-Syed
Amministratore
FJ
Beh, questo sembra carino e ha funzionato per le categorie, ma per qualche motivo non ha funzionato per una mia tassonomia personalizzata. Mi è sfuggito qualcosa? C'è un hook da qualche parte che non ho guardato?
Comunque, grazie mille per queste illuminazioni sul lavoro di Ohad. Ci ho girato intorno chiedendomi come diavolo potessi usarlo correttamente. Sono solo il tipo che fa da sé, non un vero sviluppatore, sono sicuro che l'avrai già capito.
Grazie ancora.
Staff editoriale
Alla riga 24 di example-usage.php, dovresti essere in grado di specificare la tua tassonomia personalizzata.
Amministratore
Ben
Per chiarire – Riga 24 di taxonomy-fields.php
‘pages’ => array(‘category’), // nome tassonomia, accetta categorie, post_tag e tassonomie personalizzate
CAMBIA XXX con il nome della tua tassonomia personalizzata
'pages' => array('xxxxx'), // nome della tassonomia, accetta categorie, post_tag e tassonomie personalizzate
Kobbe
@ Editor perdonami, come faccio a visualizzare un campo di testo
Staff editoriale
Devi usare il codice PHP che abbiamo condiviso. Assicurati di cambiare il nome del campo con quello che hai.
Amministratore
Kobbe
Grazie editor, apprezzo molto la risposta. Questo è class-usage-demo.php – http://pastebin.com/ctZPeS0w
Sto facendo questo ma non visualizza/restituisce nulla. Cosa sto sbagliando..? ed è possibile visualizzare il codice (se possibile) ovunque nel mio tema... Grazie
Staff editoriale
Il codice che hai sta semplicemente impostando il lato amministrativo delle cose. Per visualizzare il codice, guarda il codice PHP che abbiamo condiviso nell'articolo. Devi usarlo nel tuo file di archivio della tassonomia.
gaurav kaushik
è fantastico..
ma dove salva i dati...? nella tabella postmeta o crea una nuova tabella?
Staff editoriale
Lo fa nella tabella delle opzioni.
Amministratore
Gaurav Kaushik
possiamo cambiare il backend di questo plugin.. intendo vogliamo creare una tabella termmeta (meta_id,term_id,meta_key,meta_value) ..e salvare qui la meta della tassonomia... o collegarla a questo plugin? http://wordpress.org/extend/plugins/simple-term-meta/
Jim
Ottima roba. Implementerò questo sul nostro blog in futuro.
Michelle
Oh thanks you so much, I’ve been wondering how to identify tags as being English or Spanish for my bilingual site – this helps enormously
Jaime
Ho appena finito di codificare campi personalizzati per una tassonomia personalizzata per un progetto su cui sto lavorando. Adoro la flessibilità – controllerò sicuramente il plugin per progetti futuri!
Staff editoriale
Sì, questa è la parte migliore. Ci piace imbatterci in librerie come questa che rendono la vita degli sviluppatori molto più facile.
Amministratore