get_template_directory_uri punta al tema genitore invece che al tema child
Il problema che sto riscontrando è che get_template_directory_uri punta al tema genitore come site/wp-content/themes/twentythirteen/myGallery/gallery_functions_include.php
ma vorrei che puntasse al mio tema child che dovrebbe essere site/wp-content/themes/child-twentythirteen/myGallery/gallery_functions_include.php
quello che sto usando è include (TEMPLATEPATH . '/myGallery/gallery_functions_include.php');

get_template_directory_uri()
restituirà sempre l'URI del tema genitore corrente.
Per ottenere invece l'URI del tema figlio, è necessario utilizzare get_stylesheet_directory_uri()
.
Puoi trovarle nella documentazione, insieme a un elenco di altre funzioni utili per ottenere varie posizioni delle directory del tema.
Se preferisci utilizzare una costante, allora TEMPLATEPATH
è equivalente a chiamare get_template_directory()
(cioè il tema genitore), e STYLESHEETPATH
è equivalente a chiamare get_stylesheet_directory()
(cioè il tema figlio).
Queste costanti sono impostate dal core di WordPress in wp-includes/default-constants.php
e sostanzialmente appaiono così:
define('TEMPLATEPATH', get_template_directory());
...
define('STYLESHEETPATH', get_stylesheet_directory());
Se non esiste un tema figlio, allora sia le funzioni 'template' che 'stylesheet' restituiranno la posizione del tema genitore.
Nota la differenza tra queste funzioni e quelle che terminano con _uri
- queste restituiranno il percorso assoluto del server (es. /home/example/public_html/wp-content/yourtheme
), mentre le funzioni _uri
restituiranno l'indirizzo pubblico (ovvero URL) - es. http://example.com/wp-content/themes/yourtheme
.

che ne dici di include (TEMPLATEPATH . '/myGallery/gallery_functions_include.php'); anche questo va alla directory genitore

@ElroyFernandes Ho aggiunto questo alla mia risposta. STYLESHEETPATH è la costante che dovresti usare invece

Grazie per aver risposto alla domanda invece di dire semplicemente di leggere il manuale. Questo è apparso per primo nei miei risultati di ricerca.

Risposta corretta ma pessima scelta del nome da parte di WordPress - non riguarda solo i fogli di stile, ma anche JS, risorse, include ecc.

Dovresti spostare i tuoi template personalizzati, quelli che non sono controllati dal tema attivo, in una cartella child.
Mantieni il tema separato da tutti i file personalizzati in modo che il tema possa essere aggiornato senza perdere il tuo lavoro personalizzato.
Il tema standard si trova qui ------------------------------------ \\Site\wp-content\themes\some_theme
Il tema child si trova qui --------------------------- \\Site\wp-content\themes\some_theme-child
I tuoi stili e template personalizzati e tutti i tuoi include (elementi come javascript personalizzato, immagini non salvate in WP, font personalizzati, file di dati json, e qualsiasi plugin che potresti caricare) dovrebbero essere spostati nella cartella child FUORI dal tema.
\themes\some_theme \themes\some_theme-child\ (tutti i tuoi file template php personalizzati qui) \themes\some_theme-child\images \themes\some_theme-child\includes \themes\some_theme-child\languages \themes\some_theme-child\json \themes\some_theme-child\style
Per le tue pagine di stile personalizzate (non il file style.css sovrascritto del tema) caricale con wp_enqueue_style( 'some-css', get_stylesheet_directory() . '/style/some.css' , false, '0.0.1', 'all');
Usa get_stylesheet_directory_uri() con le tue chiamate xhr, ecc.
