Ci sono molti molti modi per cambiare l’aspetto di una pagina specifica sul tuo sito WordPress. È possibile modificare il contenuto all’interno dell’editor di contenuti di WordPress. È possibile modificare le regole CSS che influenzano il sito. Oppure crea un nuovo file nella gerarchia del modello del tuo tema WordPress per corrispondere alla pagina specifica. Oppure è possibile utilizzare un modello di pagina tema progettato specificamente per quella pagina. L’ultimo è quello di cui stiamo parlando qui. In questo tutorial tratteremo sia come creare un modello di pagina personalizzata WordPress, e perché si potrebbe desiderare di farlo. Inizieremo con il perché.
Quando dici “WordPress Theme Custom Page Template”, cosa intendi?
C’è un enorme problema terminologico con questo argomento. Come ho accennato sopra, ci sono molte cose con la vaga nozione di “pagina” e “modello” nel mondo di WordPress che non sono ciò di cui stiamo parlando qui. La prima cosa che* non * intendo quando dico “WordPress custom page template” è ” un tema WordPress.”(Molte persone nuove di WordPress dicono “modelli” quando significano ” un tema WordPress.”)
Quindi cosa intendo per “modello di pagina personalizzato”? Voglio dire ciò che è mostrato a destra. Ad esempio, stai modificando il tipo di contenuto della pagina in WordPress (anche se, come vedremo più avanti, ora può includere altri tipi di contenuto WordPress). E mentre modifichi la tua pagina, noti la casella “Attributi pagina”, E all’interno di ciò, potresti (a seconda che il tuo tema abbia già questi modelli) vedere questo menu a discesa” Modello”. Questa casella di selezione è illustrata a destra (è anche sul lato destro della schermata “modifica pagina”). Se vedi questo menu a discesa, è perché il tema fornisce alcuni di questi “modelli di pagina personalizzati.”In realtà sono file nella cartella del tema attualmente attivo (o il suo genitore) e hanno una singola caratteristica distintiva a cui arriveremo in seguito. Ma questo menu a discesa selezionabile di modelli di pagina con nome è quello di cui stiamo parlando qui oggi.
Come si inserisce nella gerarchia del modello?
Ho scritto prima, e probabilmente lo farò di nuovo, su come il modello — c’è di nuovo quella parola — la gerarchia è davvero il concetto chiave che devi capire per costruire o modificare un tema WordPress. (Ecco la nostra rapida introduzione ad esso.) Quasi tutto il resto è un dettaglio che puoi risolvere una volta compresa la dinamica di base della gerarchia del modello. La cosa specifica che intendiamo oggi, tuttavia, si trova al di fuori della gerarchia del modello. Questo” modello selezionato ” sostituisce essenzialmente l’intero processo di selezione della gerarchia del modello.
Se è stato selezionato un modello di pagina personalizzato nel menu a discesa che abbiamo mostrato sopra, verrà utilizzato il file “modello”. Punto e basta, nessuna eccezione.
Per ribadire che, se è selezionato un modello di pagina personalizzato, verrà utilizzato il file “modello”. Punto e basta, nessuna eccezione. In caso contrario, la gerarchia dei modelli di WordPress cercherà un modo un po ‘ diverso in cui qualcuno potrebbe aver provato a modellare una pagina specifica, con un file page-123.php
o page-custom-template-utilizer.php
. (La differenza tra il modello personalizzato e uno con questa struttura page-$id
o page-$slug
è in realtà solo nell’interazione e nell’interfaccia.) Se nessuno di questi viene trovato, WordPress tornerà a page.php
, se esiste, e in caso contrario finiremo al fallback finale, index.php
.
Se ti stai chiedendo perché useresti questo metodo in contrasto con quello numerico o slug — in entrambi i casi stai creando un file personalizzato nel tuo tema, dopo tutto — il motivo è che l’utilizzo di modelli personalizzati ti offre maggiore flessibilità e indipendenza tra il tema e il database e il contenuto del tuo sito. Per questo motivo, lo consiglierei in quasi tutte le situazioni in cui non sei sicuro di quale andare. Con la struttura numerica o basata su slug page-*.php
, sei costretto a far conoscere al tuo tema il modo specifico in cui i dati del tuo database WordPress sono in questo momento. (Quindi se riutilizzi il tema su un altro sito WordPress, ad esempio, quel file è inutile.)
Come faccio a creare un modello di pagina personalizzato WordPress?
OK, quindi sappiamo che i modelli di pagina personalizzati supereranno la gerarchia dei modelli di WordPress. E che faremo uso di loro sulle pagine reali del nostro sito WordPress selezionandoli da un menu a discesa” Modello ” sulla barra di destra del relativo pezzo di contenuto. Quindi è il momento di arrivare al processo per la creazione di un modello di pagina personalizzata WordPress.
Quello che farai è aggiungere al tuo tema (e dovrebbe davvero essere un tema figlio a meno che non ci sia un vincolo molto forte che ti rende impossibile) un file con un nome come my-template.php
o really-cool-awesome.php
. Non importa, finché non usi effettivamente un nome che fa parte della gerarchia del modello, sei d’oro. (Che significa: non usare un nome come page-whatever.php
. Come abbiamo toccato sopra, la gerarchia dei modelli di WordPress pensa di possedere un file chiamato con quel modello.)
Una volta ottenuto il file (cool-page-template.php
, di qualunque cosa tu preferisca), dovresti avviarlo in questo modo:
<?php/*Template Name: Name To Appear In The Dropdown*/?>This is my custom template.
E hai praticamente finito. Come probabilmente puoi intuire, il nome che apparirà nel menu a discesa “Modello” è quello che ho abilmente chiamato “Nome per apparire nel menu a discesa.”Proprio come il file style.css
del tuo tema o il file principale di un plugin, WordPress utilizza le informazioni all’interno di questo commento del codice per fornirgli il contesto per funzionare.
Quindi il contenuto delle nostre pagine sarà, in questo caso, il testo HTML di base “Questo è il mio modello personalizzato”. Come si può immaginare, qui è dove si è molto più propensi a mettere il contenuto HTML che si desidera visualizzare sulla pagina. Quindi i tuoi tag <h1>
, <p>
tag, e forse (se sei di fantasia 🤪) alcuni PHP per fare un comportamento personalizzato che vuoi mostrare.
Perché il tuo modello di pagina personalizzato WordPress non viene visualizzato
Ho (più di una volta) avuto l’esperienza che il mio nuovo modello di pagina WordPress non viene visualizzato. Di gran lunga la causa più comune è che ho digitato (o misremembed) come dovrebbe essere il commento dell’intestazione del file. Deve essere etichettato con il titolo giusto preciso. Quindi Template Name: Narrow Page
è perfetto, ma WordPress non individuerà mai qualcosa che ha invece un’intestazione di Template: Custom
.
Ci sono alcune altre cose da controllare. Altri motivi per cui potresti scoprire che il tuo modello di pagina personalizzato non viene visualizzato:
- Hai messo il file nel posto sbagliato (deve essere nel tuo tema corrente in esecuzione o nel suo genitore)
- Hai dato al tuo modello un file che inizia con
page-
. A causa di una caratteristica dei temi WordPress, i modelli di pagina personalizzati che iniziano conpage-
vengono invece trattati come pagina della gerarchia dei modelli. - Al tuo tema manca uno dei suoi due file require e quindi non funziona. (Temi WordPress * deve * avere un file
index.php
e unstyle.css
.) - C’era un problema con questo ai tempi di WordPress 4.9 (alcuni anni fa)
Modelli di pagina per i tipi di post personalizzati WordPress non”Pagina”
Per gran parte della storia di WordPress, questi “modelli di pagina personalizzati” erano solo per il tipo di contenuto “Pagina”. (WordPress ha solo due tipi di contenuto, “Post” e “Pagine” per impostazione predefinita.) Ma in WordPress 4.7, è stata aggiunta la funzione che è possibile utilizzare questi modelli di pagina con nuovi tipi di contenuto (spesso chiamati “tipi di post personalizzati”).
Per fare ciò, aggiungi un’altra riga all’intestazione “file.”Quindi sarebbe un po’ come questo:
<?php/*Template Name: Narrower TemplateTemplate Post Type: post, page, event*/// Page HTML and PHP goes here...
Come puoi immaginare, questa nuova intestazione Template Post Type:
prefigge il nome “a livello di codice” per i tipi di post (personalizzati). Noterai che nell’esempio precedente, elenchiamo il tipo di contenuto page
fornito da WordPress e quello post
. Inoltre, stiamo supportando un terzo “tipo di post personalizzato” chiamato event
.
Un ottimo motivo per utilizzare modelli di pagina personalizzati
Ora, se lo hai fatto prima, noterai che la pagina sopra non avrà stile e assomiglierà molto al resto del tuo sito WordPress (a meno che tu non abbia il tema più semplice che si possa immaginare). Questo perché il nostro file ha una cosa semplice in esso, e manca di funzionalità molto comune in tutte le altre pagine a tema. Non ha get_header()
, get_footer()
o Il Ciclo, chiamate che probabilmente fanno tutti gli altri file del tema.
A volte si desidera una pagina che non è molto simile al resto del tuo sito, ma ancora una parte della vostra esperienza di gestione di WordPress. Questi modelli personalizzati sono perfetti per questo.
Ma illustra una delle grandi potenze di modelli personalizzati come questi: a volte si desidera una pagina che non è molto simile al resto del tuo sito, ma ancora una parte della vostra esperienza di gestione di WordPress. Questi modelli personalizzati sono perfetti per questo. Mentre li vedi utilizzati anche per le pagine degli archivi, o (meno comunemente) pagine di contatto, questa capacità è spesso trascurata.
E infine, alcuni consigli pratici sui modelli di pagina
Quando stai cercando di creare una pagina simile alle tue altre pagine (ma un po ‘ diversa) Inizierei effettivamente copiando un file esistente dal tuo tema, probabilmente page.php
. Questo è semplicemente perché la maggior parte di noi trova più facile cambiare qualcosa che costruire da zero. L’esempio di codice fornisce al modello di pagina quel senso di “pagina bianca vuota”, in cui probabilmente stai cercando di aggiungere o rimuovere alcuni dettagli specifici dal tuo modello page.php
esistente. Rimuovere la barra laterale o il piè di pagina, ad esempio, sono motivi molto comuni per cui le persone creano un “modello di pagina personalizzato” in WordPress.
Come abbiamo coperto, se duplichi il file page.php
del tuo tema per iniziare a creare il tuo modello di pagina personalizzato, dovrai assicurarti di aggiungere “intestazione del modello di pagina personalizzata” che abbiamo sopra. Ancora una volta, quelle sono la pagina “magica” che fa funzionare questi modelli. Ora, vai a creare pagine fantastiche!
Credito di immagine: Infragmation