Per creare un template WordPress è necessario avere bene in mente il “materiale” sul quale si deve lavorare, a cominciare dalla struttura delle pagine. Vediamo quindi quali sono le basi da cui partire.
La struttura delle pagine
Una pagina in WordPress presenta una struttura che si articola in quattro blocchi: l’header, cioè l’intestazione; il content, cioè il corpo della pagina; la sidebar, cioè l’area che è destinata a sottomenu e widget; e il footer, cioè il fondo della pagina. Per le pagine dei singoli post, poi, deve essere tenuta in considerazione un’ulteriore area, che è quella in cui vengono inseriti i commenti.
La funzione include (), in PHP, presenta il contenuto di un file esterno dentro uno script; tuttavia, nel momento in cui si sviluppa un tema di WordPress, non è consigliabile ricorrere a include () ma a funzioni caratteristiche del framework che offrono la possibilità inserire i template che formano le parti della pagina in maniera più facile e sicura. Vi sono, poi, i template tags: si tratta delle funzioni get_header (), get-sidebar () e get-footer (), che servono a includere header.php, sidebar.php e footer.php, che sono i template generali, in modo dinamico. Il loop, invece, è il ciclo iterativo che genera i contenuti della pagina. Per creare un template WordPress è indispensabile avere dimestichezza con i loop, all’interno del quale sono compresi ulteriori template tags con cui si manda l’output a video e si ha l’accesso al database.
L’header
Vale la pena di focalizzarsi, poi, su get-header (), il template tag che comprende il template header.php; nel caso in cui sia presente per questo tipo di pagina un template più specifico, esso deve prendere il nome di header{nome del template}.php. Per fare un esempio, la pagina iniziale di un sito potrebbe includere una specifica intestazione all’interno del template header-home.php. Va detto che il file header.php è quello che genera la parte superiore (quella che presenta il menu di navigazione) della pagina, e contiene l’intestazione del documento HTML, unitamente con i tag link e script. I tag del core vengono impiegati al fine di recuperare dal database informazioni che servono, poi, per dare vita alla struttura HTML della pagina.
Il content
Il contenuto può essere diverso a seconda della tipologia di pagina: una pagina di categoria conterrà l’elenco dei post, una pagina di contatto presenterà una mappa e una form, una pagina “Eventi” conterrà un calendario, una gallery conterrà foto e video. Infine la home page conterrà un misto di tutte i precedenti contenuti, disposti in base alle nostre esigenze.
La sidebar
Vi è, quindi, la sidebar, che non è altro che un contenitore dei widget e dei sottomenu del sito (categorie, tag, eccetera): questi ultimi sono blocchi di codice HTML al cui interno sono proposte informazioni connesse ai contenuti. All’interno di una stessa pagina si possono trovare molteplici sidebar: ciascuna di esse è posizionata in un’area differente.
Il footer
La parte bassa della pagina, invece, prende – come detto – il nome di footer: essa include informazioni aggiuntive, form di ricerca, note di copyright, e così via. Possono essere presenti, insomma, tanti tipi di informazioni differenti, al punto che all’interno del footer può trovarsi un’ulteriore sidebar.
Nel momento in cui l’utente di un sito fa clic su una voce specifica di un menu, viene inviata una query string dal client al server in funzione della quale WordPress sceglie i contenuti e i template che deve essere adottato per generare la pagina, secondo la logica classica della Template Hierarchy.
Chi vuole creare un template WordPress ha, da questo punto di vista, una certa libertà di scelta, nel senso che non esistono delle norme universali a proposito della struttura che un template file deve presentare. In linea di massima, comunque, un template file propone sempre i tag get_header (), get_sidebar () e get_footer (), i quali comprendono le parti del loop che lancia i contenuti a video.