get_template_directory_uri apontando para o tema pai não filho

22

O problema que estou tendo é que o get_template_directory_uri está apontando para o tema pai como site/wp-content/themes/twentythirteen/myGallery/gallery_functions_include.php

mas quero que aponte para o tema do meu filho, que deve ser site/wp-content/themes/child-twentythirteen/myGallery/gallery_functions_include.php

o que estou usando é include (TEMPLATEPATH . '/myGallery/gallery_functions_include.php');

    
por Elroy Fernandes 18.06.2016 / 06:10
fonte

2 respostas

50

get_template_directory_uri() sempre retornará o URI do tema pai atual.

Para obter o URI do tema filho, use get_stylesheet_directory_uri() .

Você pode encontrar essas na documentação , juntamente com uma lista de outras funções úteis para obter vários locais de diretório de temas.

Se você preferir usar uma constante, então TEMPLATEPATH é semelhante a chamar get_template_directory() (ou seja, o tema pai) e STYLESHEETPATH é semelhante a chamar get_stylesheet_directory() (ou seja, o tema filho).

Essas constantes são definidas pelo núcleo do WordPress em wp-includes/default-constants.php e basicamente se parecem com isso:

define('TEMPLATEPATH', get_template_directory());
...
define('STYLESHEETPATH', get_stylesheet_directory());

Se não houver um tema filho, as funções 'template' e 'stylesheet' retornarão a localização do tema pai.

Observe a diferença entre essas funções e as funções terminadas em _uri - elas retornarão o caminho absoluto do servidor (por exemplo, /home/example/public_html/wp-content/yourtheme ), enquanto as funções _uri retornarão o endereço público (também conhecido como URL) - por exemplo . http://example.com/wp-content/themes/yourtheme .

    
por Tim Malone 18.06.2016 / 06:20
fonte
0

Você deve mover seus modelos personalizados, aqueles que não são controlados pelo tema ativo, para uma pasta filha.

Mantenha o tema separado de todos os arquivos personalizados, dessa forma, o tema pode ser atualizado sem perder seu trabalho personalizado.

Your out-of-the-box theme lives here
------------------------------------
\Site\wp-content\themes\some_theme
Your child theme lives here
---------------------------
\Site\wp-content\themes\some_theme-child

Seus estilos e modelos personalizados e todas as suas inclusões (como JavaScript personalizado, imagens que não são salvas no WP, fontes personalizadas, arquivos de dados json e quaisquer plug-ins que você possa enfileirar) devem ser movidos para a pasta filha FORA do tema .

\themes\some_theme
\themes\some_theme-child\ (all your custom php template files here)
\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

Para suas páginas de estilo personalizadas ( não o estilo.css substituído pelo tema ) enfileirar com wp_enqueue_style ('alguns-css', get_stylesheet_directory () . '/ style/some.css', false, '0.0 .1 ',' todos ');

Use get_stylesheet_directory_uri () com suas chamadas xhr, etc.

    
por Greg Bologna 06.06.2018 / 21:11
fonte