Jogue com:
echo '<ul><li>'.implode('</li><li>', str_replace(str_replace('\', '/', ABSPATH).'wp-content/', '', array_slice(str_replace('\', '/', get_included_files()), (array_search(str_replace('\', '/', ABSPATH).'wp-includes/template-loader.php', str_replace('\', '/', get_included_files())) + 1)))).'</li></ul>';
Escrito em:
Como você descobre qual página de modelo está veiculando a página atual?
se admin-bar stuff
caminho estiver aparecendo no topo, ou qualquer outro arquivo, mude o nome do arquivo template-loader.php
nesta linha de código para: qualquer nome de arquivo que você precise quebrar.
se você precisar disso na barra de administração, use a priotity correta (mais antiga) para garantir que nenhum arquivo seja inserido no final dessa lista. Por exemplo:
add_action('admin_bar_menu', 'my_adminbar_template_monitor', -5);
priority -5
garante que ele seja carregado primeiro. A chave é processar essa linha no momento certo.
Ele não retorna o arquivo de modelo "atual", mas todo o atual em uso para a carga de página atual. Talvez "recorte" com alguma lógica dessa ideia .
A tecla get_included_files()
"última" é o último arquivo incluído registrado, provavelmente o último arquivo de modelo / -part usado no rodapé pelo widget da barra lateral ou algo assim. Provavelmente, muitos arquivos incluídos no cos não se registram / preenchem novamente em get_included_files ().
Caso contrário, a intenção deve estar clara para hackear este problema . Não há como um arquivo incluído se reportar como incluído, até que seja incluído . Então é provável que seja tarde para usar o cenário.
A maior parte do "tempo" que você gostaria :
$template = get_current_loaded_template();
if($template == 'single-product.php') add_filter('the_title' ....
if($template == 'format-gallery.php') add_action('post_thumbnail' ....
Mas isso não é possível se o modelo for carregado fora do método principal do Wordpress de get_template_part
. Reprojetar suas necessidades em vez disso! Talvez loop_start()
, in_the_loop()
e add_action('the_post')
tenham a solução desejada, para alterar dados dependendo do modelo que será carregado para cada entrada em um loop.