Home CMS se sei nel tuo teplate page di wordpress…

se sei nel tuo teplate page di wordpress…

129
0

La tua condizione dovrebbe essere scritta in questo modo:

if (is_page_template(‘path/file.php’)) {
// Fai qualcosa
}

Credo che la confusione sia dovuta a due cose:

I documenti fanno riferimento a “name” in modo ambiguo. Specificare “file name” renderebbe la documentazione molto più chiara.
Il codice dietro is_page_template() mostra la funzione get_page_template_slug() al suo interno. Questa funzione restituisce effettivamente un nome file, non lo slug del template. https://codex.wordpress.org/Function_Reference/get_page_template_slug

Quando si specifica un argomento per la funzione is_page_template() (come nell’esempio sopra), il percorso del file è relativo alla radice del tema.

Questa funzione non funzionerà all’interno del ciclo.

MODIFICA: un problema importante da notare anche qui. La funzione is_page_template() restituirà empty/false se la pagina utilizza il template predefinito dalla gerarchia. Se non viene assegnato un modello personalizzato, devi usare un altro metodo, come basename(get_page_template()). Guarda la risposta di Jacob qui per maggiori dettagli:

MODIFICA 2: Questa nota “modello predefinito” include modelli che usano lo slug di pagina o altre convenzioni di denominazione (ad esempio page-mypage-slug.php) dalla mia esperienza personale.

Previous articleInserire tramite codice delle immagini sulla sezione media di wordpress
Next articleUncaught ReferenceError: jQuery non è definito: come risolvere in WordPress

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.