come-creare-tassonomie-personalizzate-in-wordpress

Molte persone pensano a WordPress come uno strumento di blogging, principalmente perché ha post, categorie, tag, ecc. Ciò che la maggior parte delle persone non sa è che tutti i post, le categorie, i tag possono essere sostituiti da tipi di post personalizzati e tassonomie personalizzate. In questa guida ti mostreremo come creare tassonomie personalizzate in WordPress e come visualizzare tassonomie personalizzate nel tuo tema WordPress.

Che cos’è una tassonomia?

La tassonomia in WordPress è una di quelle cose che tutti usano, ma non sanno che la stanno usando. Derivate dal metodo di classificazione biologica tassonomia linneana, le tassonomie di WordPress sono utilizzate come un modo per raggruppare post e custom post types (tipi di post personalizzati). WordPress ha due tassonomie molto popolari che le persone usano regolarmente: Categorie e Tag (Leggi: Categorie e Tag: cosa sono e come usarli).

È possibile utilizzare tassonomie personalizzate per creare gruppi personalizzati e metterli sotto un unico insieme. Ad esempio, ipotizziamo che hai un custom post type chiamato Libri. Anche se puoi utilizzare le categorie, potresti non voler mescolare i due perché sono usati in modo diverso. È possibile quindi registrare una nuova tassonomia personalizzata chiamata Argomenti. Puoi aggiungere termini come: Avventura, Storia d’amore, Saggistica, ecc. Ciò consentirebbe a te e ai tuoi utenti di ordinare i tuoi libri per argomento. Le tassonomie possono anche essere gerarchiche nel senso che puoi avere argomenti principali come: Fiction, Saggistica e Bambini. Quindi avere argomenti secondari in ciascuna categoria, ad esempio la fiction avrebbe thriller come argomento secondario.

Ora che sai cos’è una tassonomia personalizzata, impariamo come creare tassonomie personalizzate in WordPress. Useremo due metodi per creare tassonomie personalizzate. Il metodo 1 utilizza un plug-in mentre il metodo 2 usa la scrittura in codice.

Come creare tassonomie personalizzate in WordPress con plugin

Iniziamo a creare una tassonomia personalizzata. Innanzitutto, è necessario installare e attivare il plugin WordPress Simple Taxonomy . Dopodichè vai su Impostazioni »Tassonomie personalizzate (Custom Taxonomies) per creare una nuova tassonomia:

creare-una-tassonomia-personalizzata-in-wordpress-con-plugin

La prima parte della creazione di una tassonomia personalizzata è dargli un nome, che deve essere tutto minuscolo e senza caratteri strani. La seconda opzione è se questa tassonomia sarà gerarchica o meno. Se si desidera creare una tassonomia come le categorie in cui è possibile aggiungere un termine padre e figlio, quindi selezionare Vero, in altri casi scegliere Falso se si desidera aggiungere termini come tag.

La terza opzione è associare questa tassonomia a un tipo di post e l’ultima opzione è se si desidera aggiungere automaticamente i termini (scegliere none  come nell’immagine).

Ma non abbiamo ancora finito. Supponiamo che tu stia creando una tassonomia e la chiami Argomenti (Topic). Ora devi dire a WordPress come dovrebbe tradurre l’interfaccia utente per gli argomenti (topic).

creare-taxonomy-personalizzata-in-wordpress

Dopo aver fornito le traduzioni per l’interfaccia utente, premi il pulsante Aggiungi tassonomia (Add Taxonomies). Una volta creata la tassonomia personalizzata, questa verrà visualizzata in Post (Articoli) e avrà un’interfaccia simile a Categorie o Tag. Anche il campo della tassonomia personalizzata verrà visualizzato nell’area di modifica post.

tassonomia-personalizzata-in-wordpress-post-edit

Come creare tassonomie personalizzate in WordPress con codice

Aggiungi il seguente codice nel filefunctions.php del tuo tema o in un plug-in specifico per il sito (consigliato) per creare una tassonomia gerarchica personalizzata simile alle categorie:

//hook into the init action and call create_book_taxonomies when it fires
add_action( 'init', 'create_topics_hierarchical_taxonomy', 0 );
 
//create a custom taxonomy name it topics for your posts
 
function create_topics_hierarchical_taxonomy() {
 
// Add new taxonomy, make it hierarchical like categories
//first do the translations part for GUI
 
  $labels = array(
    'name' => _x( 'Topics', 'taxonomy general name' ),
    'singular_name' => _x( 'Topic', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search Topics' ),
    'all_items' => __( 'All Topics' ),
    'parent_item' => __( 'Parent Topic' ),
    'parent_item_colon' => __( 'Parent Topic:' ),
    'edit_item' => __( 'Edit Topic' ), 
    'update_item' => __( 'Update Topic' ),
    'add_new_item' => __( 'Add New Topic' ),
    'new_item_name' => __( 'New Topic Name' ),
    'menu_name' => __( 'Topics' ),
  );    
 
// Now register the taxonomy
 
  register_taxonomy('topics',array('post'), array(
    'hierarchical' => true,
    'labels' => $labels,
    'show_ui' => true,
    'show_admin_column' => true,
    'query_var' => true,
    'rewrite' => array( 'slug' => 'topic' ),
  ));
 
}

Per creare una tassonomia personalizzata non gerarchica simile ai tag, aggiungi invece questo codice:

//hook into the init action and call create_topics_nonhierarchical_taxonomy when it fires
 
add_action( 'init', 'create_topics_nonhierarchical_taxonomy', 0 );
 
function create_topics_nonhierarchical_taxonomy() {
 
// Labels part for the GUI
 
  $labels = array(
    'name' => _x( 'Topics', 'taxonomy general name' ),
    'singular_name' => _x( 'Topic', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search Topics' ),
    'popular_items' => __( 'Popular Topics' ),
    'all_items' => __( 'All Topics' ),
    'parent_item' => null,
    'parent_item_colon' => null,
    'edit_item' => __( 'Edit Topic' ), 
    'update_item' => __( 'Update Topic' ),
    'add_new_item' => __( 'Add New Topic' ),
    'new_item_name' => __( 'New Topic Name' ),
    'separate_items_with_commas' => __( 'Separate topics with commas' ),
    'add_or_remove_items' => __( 'Add or remove topics' ),
    'choose_from_most_used' => __( 'Choose from the most used topics' ),
    'menu_name' => __( 'Topics' ),
  ); 
 
// Now register the non-hierarchical taxonomy like tag
 
  register_taxonomy('topics','post',array(
    'hierarchical' => false,
    'labels' => $labels,
    'show_ui' => true,
    'show_admin_column' => true,
    'update_count_callback' => '_update_post_term_count',
    'query_var' => true,
    'rewrite' => array( 'slug' => 'topic' ),
  ));
}

Notare la differenza tra due codici. Il valore per l’argomento gerarchico è vero per la tassonomia simile a una categoria e falso per le tassonomie simili a tag. Anche nell’ array delle etichette (label) per la tassonomia non gerarchica simile a tag, abbiamo aggiunto null per gli argomenti parent_item e parent_item_colon, il che significa che non verrà mostrato nulla nell’interfaccia utente per creare l’elemento genitore.

Come visualizzare in WordPress le tassonomie personalizzate

Ecco come puoi visualizzare i termini che hai aggiunto a una tassonomia personalizzata sulla tua singola pagina di post. Aggiungi questa singola riga di codice nel tuo file single.php all’interno del ciclo:

<?php the_terms( $post->ID, 'topics', 'Topics: ', ', ', ' ' ); ?>

È possibile aggiungerlo in altri file, ad esempio archive.php, index.php e in qualsiasi altro luogo in cui si desidera visualizzare la tassonomia.

Per impostazione predefinita, le tassonomie personalizzate utilizzano il template archive.phpper visualizzare i post. Tuttavia, è possibile creare una visualizzazione dell’archivio personalizzata per loro creando taxonomy-{taxonomy-slug}.php.

E’ tutto! Speriamo che questo articolo ti abbia aiutato a imparare come creare tassonomie personalizzate in WordPress.

Related Posts