get_template_directory_uri indică spre tema părinte, nu spre tema copil
Problema pe care o întâmpin este că get_template_directory_uri indică spre tema părinte, astfel: site/wp-content/themes/twentythirteen/myGallery/gallery_functions_include.php
dar vreau să indice spre tema mea copil, care ar trebui să fie site/wp-content/themes/child-twentythirteen/myGallery/gallery_functions_include.php
ceea ce folosesc eu este include (TEMPLATEPATH . '/myGallery/gallery_functions_include.php');

get_template_directory_uri()
va returna întotdeauna URI-ul temei părinte curente.
Pentru a obține URI-ul temei copil, trebuie să utilizați get_stylesheet_directory_uri()
.
Puteți găsi aceste în documentație, împreună cu o listă de alte funcții utile pentru obținerea diferitelor locații ale directorului temei.
Dacă preferați să utilizați o constantă, atunci TEMPLATEPATH
este similar cu apelarea get_template_directory()
(adică tema părinte), iar STYLESHEETPATH
este similar cu apelarea get_stylesheet_directory()
(adică tema copil).
Aceste constante sunt setate de WordPress core în wp-includes/default-constants.php
și arată în esență astfel:
define('TEMPLATEPATH', get_template_directory());
...
define('STYLESHEETPATH', get_stylesheet_directory());
Dacă nu există o temă copil, atunci ambele funcții 'template' și 'stylesheet' vor returna locația temei părinte.
Observați diferența dintre aceste funcții și funcțiile care se termină cu _uri
- acestea vor returna calea absolută pe server (ex. /home/example/public_html/wp-content/yourtheme
), în timp ce funcțiile _uri
vor returna adresa publică (aka URL) - ex. http://example.com/wp-content/themes/yourtheme
.

dar despre include (TEMPLATEPATH . '/myGallery/gallery_functions_include.php'); acesta merge tot în directorul părinte

@ElroyFernandes Am adăugat acest lucru în răspunsul meu. STYLESHEETPATH este constanta pe care ai vrea să o folosești în schimb

Mulțumesc că ai răspuns la întrebare în loc să spui doar "citește manualul". Acest rezultat a apărut primul în rezultatele mele de căutare.

Răspuns bun, dar denumirea e prost aleasă din partea WordPress - nu e doar pentru fișiere de stil, ci și pentru JS, resurse, includeri etc.

Ar trebui să mutați șabloanele personalizate, cele care nu sunt controlate de tema activă, într-un dosar copil.
Păstrați tema separată de toate fișierele personalizate, astfel încât tema poate fi actualizată fără a pierde munca personalizată.
Tema originală se află aici ------------------------------------ \\Site\wp-content\themes\some_theme
Tema copil se află aici --------------------------- \\Site\wp-content\themes\some_theme-child
Stilurile și șabloanele personalizate, precum și toate fișierele incluse (cum ar fi JavaScript personalizat, imagini care nu sunt salvate în WP, fonturi personalizate, fișiere de date JSON și orice plugin-uri pe care le-ați putea încărca) ar trebui mutate în dosarul copil, ÎNAINTE de temă.
\themes\some_theme \themes\some_theme-child\ (toate fișierele personalizate de șabloane PHP aici) \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
Pentru paginile de stil personalizate (nu style.css suprascris al temei) încărcați cu wp_enqueue_style( 'some-css', get_stylesheet_directory() . '/style/some.css' , false, '0.0.1', 'all');
Folosiți get_stylesheet_directory_uri() cu apelurile xhr, etc.
