get_template_directory () vs bloginfo ('template_directory') vs TEMPLATEPATH


Respostas:


17

Para resumir uma longa história: get_bloginfo( 'template_directory' )e get_bloginfo( 'template_url' )simplesmente retorne get_template_directory_uri().

Portanto, você pode atalho para a segunda chamada simplesmente consultando diretamente a última tag de modelo.

Consulte a fonte paraget_bloginfo() .

Alguns outros:

  • 'url' => home_url()
  • 'wpurl' => site_url()
  • 'stylesheet_url' => get_stylesheet_uri()
  • 'stylesheet_directory' => get_stylesheet_directory_uri()
  • 'locale' => get_locale()

Editar

Observe também: TEMPLATEPATHe STYLESHEETPATHestá programado para ser descontinuado , portanto é melhor substituí-los agora, por get_template_directory()e get_stylesheet_directory(), respectivamente.

Editar 2

Re: este comentário

Apenas o que eu estava prestes a dizer :). Eu acrescentaria que get_template_directory()retorna o caminho e get_template_directory_uri()o URL. Portanto, o autor não está sendo consistente: get_bloginfo( 'template_directory' )e get_template_directory()devolva coisas diferentes!

Consulte a fonte :)

case 'template_directory':
case 'template_url':
    $output = get_template_directory_uri();
    break;

Re: este comentário:

A única ressalva ao desenvolver temas filhos, você precisará usar get_stylesheet_directory()explicitamente. Alguém me corrija se eu estiver errado.

É verdade, mas esse sempre foi o caso. get_bloginfo()não retorna nada relacionado a get_stylesheet_directory(). Apenas retorna get_stylesheet_uri()e get_stylesheet_directory_uri().


A única ressalva ao desenvolver temas filhos, você precisará usar get_stylesheet_directory () explicitamente. Alguém me corrija se eu estiver errado.
Steve

Obrigado! Eu só me pergunto por que o WP tem tantas dessas funções que apenas chamam outra função, que não devemos usar ...
coopersita

Nesse caso, acho que o motivo é simplesmente manter a compatibilidade com os get_bloginfo()parâmetros.
Chip Bennett
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.