Cosa sono i Post Type di WordPress

In WordPress il termine Post Type è usato per classificare ed identificare il tipo di contenuto. Il termine post deriva dal fatto che inizialmente WordPress era solo una piattaforma di blogging.

Ma con il tempo la piattaforma si è evoluta diventando un vero e proprio Content Management System. Quindi si è fatto ricorso al termine Post Type per identificare il tipo di contenuto con cui si ha a che fare. Per esempio un articolo è un contenuto di tipo post, mentre una pagina è di tipo page.

All’interno del database di WordPress, tutti i Post Type sono salvati in un unica tabella chiamata wp_posts. Ma il tipo di contenuto a cui fa riferimento ogni riga della tabella è indicato nella colonna chiamata post_type.

Quindi qualsiasi tipo di contenuto: pagine, articoli o altro, sarà memorizzato all’interno di questa tabella.

Come è facile intuire, WordPress contiene già alcuni Post Type predefiniti, ma, come vedremo più avanti nel corso di questa guida, è possibile creare del contenuto personalizzato facendo ricorso ai Custom Post Types.

Quando abbiamo parlato dei Template Files, abbiamo visto che i diversi tipi di contenuto sono elaborati e visualizzati da Template Files differenti. Quindi il compito dei Post Types è proprio quello di classificare il tipo di contenuto in modo da poter individuare il Template File da eseguire.

In generale, in un tema WordPress, ad ogni Post Type sono associati uno o più Template File. Quale di questi files sarà eseguito per mostrare il tipo di contenuto richiesto, dipenderà dall’ordine di priorità determinato dalla gerarchica dei Template Files vista nel precedente articolo.

Post Type predefiniti di WordPress

In WordPress sono presenti cinque Post Types predefiniti:

  • Articolo (Post Type: ‘post’)
  • Pagina (Post Type: ‘page’)
  • Allegato (Post Type: ‘attachment’)
  • Revisione (Post Type: ‘revision’)
  • Menu di navigazione (Post Type: ‘nav_menu_item’)

Questi Post Types possono essere modificati o cancellati da un plug-in o da un tema, ma è sconsigliato farlo.

Di solito i Post Types più comuni con i quali ha a che fare chi sviluppa temi WordPress sono Post, Page, Attachment, e Custom Post Types(contenuti personalizzati). Quindi, in questo articolo parlerò solo di questi contenuti e ti mostrerò quali sono i template files associati.

I tipi revision e nav_menu_item, saranno trattati più avanti.

Post

Post è Il tipo predefinito per gli articoli di un blog.

I contenuti di tipo Post (Articolo) si distinguono dagli altri contenuti perché:

  • hanno la data e l’ora di pubblicazione e modifica
  • sono ordinati per data in ordine decrescente, ovvero partendo dal più recente
  • possono essere assegnati a tassonomie predefinite come categorie e tag
  • sono utilizzati per creare feed

I Template Files eseguiti per mostrare il loro contenuto sono:

  • single.php o single-post.php
  • category.php usato per mostrare gli articoli di una categoria
  • tag.php usato per mostrare gli articoli ai quali è stato associato un particolare tag
  • taxonomy.php usato per mostrare gli articoli ai quali è stato associata una particolare tassonomia
  • archive.php mostra tutti gli articoli ordinati per data, partendo dalla più recente
  • author.php mostra gli articoli appartenenti ad un determinato autore
  • date.php usato per mostrare gli articoli pubblicati in una specifica data
  • search.php mostra i risultati di una ricerca
  • home.php template file predefinito per mostrare gli articolo in home
  • index.php usato per mostrare qualsiasi contenuto se non sono presenti altri template files specifici

Inoltre, anche il template front-page.php può essere usato per mostrare una lista di post.

Page

Il tipo Page è il Post Type predefinito per il contenuto di tipo statico, ovvero le pagine.

Le sue caratteristiche sono:

  • le pagine non sono associate ad una data e ne dipendono da questo dato
  • non possono essere associate a categorie e non possono avere tags
  • il loro contenuto può essere mostrato da particolari template files, detti anche page template
  • possono avere una struttura gerarchica. Ovvero avere una pagina genitore e una o più pagine figlie

I template files che possono essere implementati per mostrare il contenuto delle pagine sono:

  • page.php
  • $custom.php : il template personalizzato per particolari pagine (page template)
  • front-page.php
  • search.php
  • index.php

Page template è un particolare tipo di  template file che può essere applicato a pagine specifiche o a gruppi di pagine. Nel corso di questa guida vedremo anche come implementare un Page Template.

Attachment

Il Post Type Attachment è usato principalmente per mostrare immagini o altri contenuti multimediali. Oltre a mostrare il particolare file, contiene informazioni specifiche come nome, descrizione, dimensioni e altre informazioni salvate nei meta dati.

I template files usati per mostrare il contenuto di tipo Attachment sono:

  • MIME_type.php
  • attachment.php
  • single-attachment.php
  • single.php
  • index.php

Custom Post Type

Concludiamo il nostro articolo sul tipo di contenuto che può essere mostrato in un tema WordPress accennando i Custom Post Types. In pratica si tratta di un tipo di contenuto personalizzato creato dallo sviluppatore e con caratteristiche differenti da quelli predefiniti.

In realtà è sconsigliato creare Custom Post Types attraverso un tema, anche se è possibile farlo. Poiché se si cambia tema si perderà anche il contenuto personalizzato.

Il modo migliore per creare contenuti personalizzati è quello di farlo attraverso un plugin. In questo modo, se in un secondo momento si dovesse decidere di modificare la grafica di un sito, cambiando il tema, non si perde il contenuto personalizzato creato.

Tuttavia, anche se creati da un plugin, è possibile visualizzare contenuti personalizzati in un tema implementando specifici template files:

  • single-{post-type}.php
  • archive-{post-type}.php
  • search.php
  • index.php

Conclusioni

Ora che abbiamo le idee un po’ più chiare sui template files e sui tipi di contenuto al quale sono associati, possiamo iniziare e vedere come organizzare i files all’interno della directory di un tema. Ma lo faremo nel prossimo articolo.

Nel frattempo, se vuoi farmi qualche domanda, chiedere informazioni o darmi qualche consiglio, puoi contattarmi tramite la nostra pagina Facebook o via email.

Torna all’Indici principale della guida come creare un tema WordPress
Prossimo articolo -> Struttura e organizzazione dei file in un tema WordPress
I template files di WordPress <- Articolo precedente

Articoli correlati


Rocco Vincy

Analista/Programmatore e blogger, si occupa di sicurezza informatica e delle comunicazioni. Co-fondatore del sito/blog "BlogAmico" Telegram: @RoccoVincy

Rocco Vincy ha 227 articoli e più. Guarda tutti gli articoli di Rocco Vincy

Rocco Vincy