Custom post type in WordPress: quando usarli in azienda

Portatile con schede organizzate sulla scrivania accanto a un quaderno arancione.
Rate this post

I custom post type, o custom post types, in WordPress servono quando devi gestire contenuti ricorrenti con una struttura propria, come progetti, eventi o ricette. Li consiglio quando semplificano gli aggiornamenti e permettono di costruire archivi coerenti, senza mescolare tutto con gli articoli del blog.

Per un sito aziendale, partire dalla grafica può nascondere questo bisogno fino a sviluppo iniziato. Io preferisco definire prima quali informazioni pubblicherai, chi le aggiornerà e come dovranno trovarle i visitatori.

La scelta della tipologia di contenuto viene quindi prima del codice.

Key points

  • Usa un custom post type per contenuti ricorrenti con informazioni e struttura proprie. Per poche pagine statiche o servizi semplici bastano spesso pagine e articoli standard.
  • Distingui il tipo di contenuto, che identifica cosa pubblichi, dalla tassonomia, che raggruppa le schede, e dai campi personalizzati, che conservano i dati di ogni scheda.
  • Puoi registrare tipi e tassonomie con PHP agganciato a init oppure usare Custom Post Type UI. Un custom plugin mantiene la funzionalità separata dal tema.
  • La registrazione non crea template, campi o filtri per i visitatori. Progetta anche archivio, singole schede, permalink, indicizzazione, accessi e manutenzione.

Quando un custom post type migliora il sito aziendale

Un tipo di contenuto personalizzato aggiunge una sezione distinta nell’area amministrativa di WordPress, l’admin area da cui si gestiscono contenuti e impostazioni. Tuttavia, la sola comodità di avere una voce nel menu non basta a giustificarlo: deve risolvere un problema concreto di organizzazione.

Contenuti ricorrenti con informazioni proprie

Un portfolio può richiedere immagini, settore del progetto e servizi svolti. Un evento può avere data, luogo e collegamento alla prenotazione. Le testimonianze, invece, possono avere autore, ruolo e testo.

Queste informazioni ricorrono in ogni scheda. Perciò conviene definire una struttura condivisa, anziché ricostruirla manualmente ogni volta. I custom post types distinguono le schede, mentre i campi personalizzati conservano i dati aggiuntivi.

Nella creazione di un sito web aziendale, questa separazione aiuta anche chi dovrà aggiornarlo senza intervenire sull’impaginazione.

Un uomo osserva una parete coperta di foto incorniciate e prototipi in uno studio.

Quando bastano pagine e articoli

Per una presentazione aziendale, pochi servizi e una pagina contatti, le pagine standard sono spesso sufficienti. Anche una singola landing page raramente richiede una nuova struttura.

Negli e-commerce WooCommerce esistono già i prodotti: creare un catalogo parallelo senza una necessità precisa complica la gestione.

Come sviluppatore WordPress freelance, preferisco aggiungere una struttura solo quando rende il lavoro più semplice. Nella mia guida alla realizzazione di siti WordPress approfondisco questa progettazione basata sugli obiettivi.

Tipi di contenuto, tassonomie e campi: cosa cambia

Tra i tipi di contenuto predefiniti più conosciuti ci sono post, page e attachment, cioè articoli, pagine e allegati multimediali. WordPress ne utilizza anche altri per funzioni interne.

Un custom post type aggiunge una tipologia, mentre una tassonomia raggruppa i contenuti. Categorie e tag sono tassonomie predefinite. Le custom taxonomies permettono di classificare le schede secondo criteri specifici del progetto.

Per distinguere i tre livelli, considero questi utilizzi.

InstrumentFunzioneEsempio
Tipo di contenutoIdentifica cosa pubblichiRicetta
TassonomiaRaggruppa schede correlateCucina italiana
Campo personalizzatoMemorizza un dato della schedaTempo di preparazione

La distinzione evita di usare categorie come contenitori di informazioni che appartengono invece alla singola scheda.

Per un’azienda alimentare, le ricette possono quindi avere tassonomie dedicate alle cucine e agli ingredienti. Il tempo di preparazione resta un campo. La funzione ufficiale per registrare le classificazioni è register_taxonomy().

Un custom post type non crea automaticamente i campi personalizzati né i filtri pubblici: queste funzioni richiedono sviluppo o configurazione aggiuntivi.

Piatto di pasta con funghi circondato da ciotole con ingredienti freschi.

Registrare un custom post type con codice PHP

Per una prova puoi inserire il codice in functions.php di un child theme, con backup e ambiente di test. Evito modifiche al tema principale perché un aggiornamento può sovrascriverle.

The documentazione sulla registrazione dei contenuti indica init come hook adatto. La dicitura add_action init riassume l’aggancio della registrazione a init tramite add_action(). Questo esempio registra ricette e due tassonomie associate.

function af_registra_ricette() {
    // Classificazioni disponibili per le ricette.
    register_taxonomy( 'af_cucina', 'af_ricetta', array(
        'label' => 'Cucine',
        'hierarchical' => true,
        'show_in_rest' => true,
        'show_admin_column' => true,
    ) );


    register_taxonomy( 'af_ingrediente', 'af_ricetta', array(
        'label' => 'Ingredienti',
        'hierarchical' => false,
        'show_in_rest' => true,
        'show_admin_column' => true,
    ) );


    // Tipo di contenuto pubblico con archivio.
    register_post_type( 'af_ricetta', array(
        'labels' => array(
            'name' => 'Ricette',
            'singular_name' => 'Ricetta',
        ),
        'public' => true,
        'has_archive' => true,
        'show_in_rest' => true,
        'supports' => array( 'title', 'editor', 'thumbnail' ),
        'rewrite' => array( 'slug' => 'ricette' ),
        'menu_position' => 5,
        'menu_icon' => 'dashicons-food',
        'taxonomies' => array( 'af_cucina', 'af_ingrediente' ),
    ) );
}
add_action( 'init', 'af_registra_ricette' );

labels definisce i nomi nell’amministrazione. public rende pubblico il tipo, mentre has_archive abilita l’archivio. show_in_rest consente l’uso dell’editor a blocchi, insieme al supporto editor.

supports abilita titolo, contenuto e immagine in evidenza; quest’ultima richiede anche il supporto del tema. Infine, rewrite definisce lo slug pubblico, mentre posizione e icona riguardano il menu amministrativo.

Scegliere tra interfaccia visuale e plugin dedicato

La scelta dipende soprattutto da chi manterrà la configurazione. Entrambi i metodi possono registrare gli stessi contenuti.

Creare la struttura con Custom Post Type UI

Potresti trovare la variante “Custom Post Types Ui”, ma il nome ufficiale è Custom Post Type UI, un custom post type plugin.

Questo WordPress plugin permette di creare tipi di contenuto e tassonomie senza scrivere PHP. Dall’interfaccia imposti identificatore, etichette, visibilità, archivio e supporti.

Il WordPress plugin registra la struttura, ma non crea automaticamente una presentazione personalizzata sul sito.

La funzione di esportazione genera codice PHP riutilizzabile. Puoi trasferirlo in functions.php, ma per un sito aziendale consiglio un custom plugin. Dopo il trasferimento della registrazione puoi disattivare CPT UI, evitando registrazioni duplicate.

Questa scelta può ridurre il carico del plugin, ma non garantisce un miglioramento della velocità.

Separare la funzionalità dal tema

Per preparare la soluzione, aggiungi una cartella in /wp-content/plugins/, per esempio af-contenuti, e un file principale af-contenuti.php. Il file inizia così:

<?php
/*
Plugin Name: Contenuti aziendali
*/

Subito dopo inserisci la funzione precedente e il relativo add_action(). Quindi attiva la soluzione dall’admin area di WordPress.

Un custom plugin separa la funzionalità dal tema, mantiene attiva la registrazione dei contenuti quando cambi tema e ti permette di riutilizzare il codice.

My Custom Functions offre invece l’inserimento PHP da Settings > PHP Inserter, senza modificare i file del tema tramite SFTP. Restano a tuo carico la gestione del codice, la compatibilità e la manutenzione.

Mostrare archivio e singole schede sul sito

La registrazione prepara il contenuto, ma la sua visualizzazione dipende dal tema (theme) attivo e dalla configurazione degli strumenti utilizzati.

Template per archivio e dettaglio

Nei temi classici, WordPress cerca archive-af_ricetta.php per l’archivio e single-af_ricetta.php per la singola ricetta. Se mancano, applica i template disponibili secondo la propria gerarchia.

I template per custom post type consentono di separare l’elenco delle schede dalla pagina di dettaglio.

Nei temi a blocchi entrano invece in gioco template HTML ed Editor del sito. Con Elementor o altri strumenti occorre considerare le funzioni disponibili nella configurazione adottata.

Io progetto anche titoli leggibili, navigazione da tastiera e immagini adattabili: un archivio deve funzionare bene su un sito web responsive.

Per recuperare le ricette in un elenco personalizzato, una query WP_Query deve specificare 'post_type' => 'af_ricetta'. Per filtrare una tassonomia si utilizza tax_query.

La presenza della tassonomia nell’amministrazione non aggiunge da sola un filtro per i visitatori. Inoltre, negli elenchi estesi serve una paginazione adeguata.

Se archivio o schede restituiscono un errore 404 dopo la registrazione, salva nuovamente le impostazioni dei permalink. Evita di eseguire flush_rewrite_rules() a ogni caricamento.

Durante un restyling, invece, il cambiamento degli indirizzi richiede anche la gestione dei reindirizzamenti dalle vecchie pagine.

SEO tecnica e manutenzione da progettare insieme

Un custom post type organizza i contenuti, ma non migliora automaticamente il posizionamento del sito web. La qualità delle pagine resta determinante.

Archivi utili e contenuti pubblici

Nella SEO tecnica di WordPress considero quali archivi abbiano un’utilità reale. Una raccolta con schede curate, descrizione e collegamenti pertinenti può aiutare la navigazione. Molte tassonomie quasi vuote aggiungono invece pagine poco informative.

Il tipo di contenuto deve avere impostazioni coerenti con sitemap, indicizzazione e collegamenti interni. Questi aspetti rientrano nelle mie buone pratiche per siti WordPress.

Attenzione anche alla riservatezza: public => true non è adatto a documenti destinati a un’area clienti. Servono impostazioni di visibilità e controlli di accesso specifici.

Prestazioni e continuità operativa

Per l’ottimizzazione della velocità considero query, immagini, risorse caricate e cache. Il numero dei plugin, da solo, non descrive il peso del sito.

La manutenzione WordPress deve comprendere anche codice personalizzato, dipendenze e compatibilità dopo gli aggiornamenti. Perciò documento dove vengono registrati i contenuti e chi gestisce l’assistenza del sito.

Dopo la pubblicazione, Search Console aiuta a osservare la presenza nella ricerca. Gli eventi configurati in Analytics permettono invece di misurare azioni come l’invio di un modulo. Sono attività distinte dallo sviluppo della struttura.

Domande frequenti sui custom post type

I contenuti spariscono disattivando il plugin?

Generalmente restano nel database, ma il tipo non viene più registrato. Di conseguenza, gestione amministrativa e indirizzi pubblici possono diventare indisponibili finché non ripristini la registrazione.

Quanto costa aggiungerli a un sito aziendale?

Costi e tempi dipendono da obiettivi, contenuti, pagine, campi, template, funzionalità, integrazioni e condizioni del sito iniziale. La sola registrazione è una parte del lavoro.

Una struttura utile anche dopo il lancio

Consiglio i custom post type quando rendono i contenuti più facili da gestire e danno ai visitatori percorsi chiari. Per poche pagine statiche preferisco mantenere una struttura essenziale.

La decisione deve comprendere anche visualizzazione, manutenzione e continuità dopo un cambio di tema. È questo insieme a rendere sostenibile la personalizzazione.

Lavoro da Ciampino, nell’area di Roma, e seguo online aziende in tutta Italia. Se devi creare o riorganizzare il tuo sito aziendale, Parliamo del tuo progetto web.

Categories

Latest articles

Un portatile su una scrivania mostra un ciclo di caricamento.
WordPress: risolvere l'errore troppi reindirizzamenti
ordini WooCommerce bloccati
Ordini WooCommerce bloccati: come sbloccare i pagamenti
Un portatile mostra la manutenzione di WordPress mentre una mano rimuove un file sul secondo schermo.
WordPress bloccato in manutenzione: come ripristinarlo
conflitti plugin WordPress
WordPress: risolvere i conflitti tra plugin senza blocchi
Powered by Joinchat