Sebbene WordPress consenta di utilizzare PHP nudo e crudo, quando ci troviamo a dover includere dei files, all’interno dei nostri temi, è bene ricorrere alla funzione get_template_part()
. Immaginiamo per esempio di dover includere il file loop-standard.php
all’interno di single.php
. Se prima del rilascio delle ultime versioni di WordPress (3.4+) era una buona pratica utilizzare la funzione include_once()
, ora viene consigliato l’utilizzo di get_template_part()
.
get_template_part()
Questa funzione appartiene alle API native di WordPress e può essere utilizzata per recuperare sezioni di codice (ad eccezione di header, footer e sidebar) del proprio tema. La funzione accetta due argomenti:
- Il primo è lo slug per il template. Nell’esempio considerato corrisponde a “loop”.
- Il secondo argomento è il nome del template da prelevare, corrispondente quindi a “standard”.
Facendo un esempio concreto, immaginando di utilizzare il formato “quote” per i post, potremmo scrivere così:
if( 'quote' == get_post_format() ) { get_template_part( 'loop', 'quote' ); }
oppure, nel caso in cui stessimo utilizzando il nome dei templates affinchè corrispondano al tipo di formato del post, potremmo semplificare così:
get_template_part( 'loop', get_post_format() );
Tuttavia sarebbe riduttivo se la funzione facesse solamente questo. La vera “forza” infatti risiede nel permettere di includere qualsiasi file .php. Come?
Ancora più semplice
Immaginiamo di aver creato uno snippet di codice chiamato pagination.php in cui abbiamo scritto le funzioni necessarie per la paginazione. Attraverso get_template_part() possiamo recuperare lo snippet in qualsiasi file del tema ci troviamo, semplicemente così:
get_template_part( 'pagination ');
Molto più semplice no?