Qual é a diferença entre get_bloginfo ('url') e get_site_url ()?


11

Estou desenvolvendo um plugin.

Eu quero saber a diferença entre

get_bloginfo('url');  

e

get_site_url();

Eu tenho a mesma saída, então qual é a diferença?

Respostas:


19
  • get_bloginfo('url')opção de chamadas home_url()chamadas de get_home_url()leiturahome

  • get_bloginfo('wpurl')opção de chamadas site_url()chamadas de get_site_url()leiturasiteurl

  • get_bloginfo('siteurl')e get_bloginfo('home')são argumentos e retorno obsoletos get_bloginfo('url')(o siteurlargumento está documentado errado no Codex como igual a wpurl, não está no código atual )

A diferença é que essas duas funções acorrentam a opções diferentes, que normalmente são iguais.

Seria mais apropriado comparar get_bloginfo('url')com get_home_url()ou get_bloginfo('wpurl')com get_site_url(). Então a resposta é que essas funções estão em níveis diferentes na cadeia. Normalmente, a função mais profunda é - quanto mais flexível ela é e menos filtros a saída passa.


3

De 'wp-includes / general-template.php'

function get_bloginfo( $show = '', $filter = 'raw' ) {

switch( $show ) {
      case 'home' : // DEPRECATED
      case 'siteurl' : // DEPRECATED
        _deprecated_argument([snipped]);
      case 'url' :
        $output = home_url();
        break;
      case 'wpurl' :
        $output = site_url();
        break;

Assim:

  • get_bloginfo('home'), get_bloginfo('siteurl')E get_bloginfo('url')são equivalentes a chamar home_url()(também notar que o uso de casa e siteurl como parâmetros get_bloginfo está obsoleta)
  • get_bloginfo('wpurl') é o mesmo que chamar site_url()

get_bloginfo('siteurl')está obsoleto e atualmente é o mesmo que get_bloginfo('url')( home_url()). Faria mais sentido para igualar get_bloginfo('wpurl')( site_url()), mas por algum motivo não. Vejo que o Codex diz o contrário: o código do poço é diferente da documentação. Fonte .
Rarst

ok ... interessante e confuso. editando minha resposta, olhando o código!
anu


1

IIRC, a principal diferença entre home_url()/ get_site_url()e seus get_bloginfo()análogos é que home_url()/ get_site_url()retorna o esquema http / https apropriado, enquanto get_bloginfo()não.


Incorreto, get_bloginfo()basta chamar site_url()/ home_url()funções e retornará o esquema adequado da mesma forma que eles.
Rarst

Oh puro! Parece que isso mudou desde a última vez que olhei general-template.php. :)
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.