¿Cuál es la diferencia entre get_bloginfo ('url') y get_site_url ()?


11

Estoy desarrollando un complemento.

Quiero saber la diferencia entre

get_bloginfo('url');  

y

get_site_url();

Obtuve la misma salida, ¿cuál es la diferencia?

Respuestas:


19
  • get_bloginfo('url')opción de llamadas home_url()llamadas get_home_url()leídashome

  • get_bloginfo('wpurl')opción de llamadas site_url()llamadas get_site_url()leídassiteurl

  • get_bloginfo('siteurl')y get_bloginfo('home')son argumentos y devolución obsoletos get_bloginfo('url')(el siteurlargumento está documentado incorrectamente en el Codex como igual a wpurl, no está en el código actual )

La diferencia es que estas dos funciones se encadenan a diferentes opciones, que generalmente son las mismas.

Sería más apropiado comparar get_bloginfo('url')con get_home_url()o get_bloginfo('wpurl')con get_site_url(). Entonces la respuesta es que estas funciones están en diferentes niveles en cadena. Por lo general, la función más profunda es: cuanto más flexible es y menos filtros pasa la salida.


3

Desde '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;

Entonces:

  • get_bloginfo('home'), get_bloginfo('siteurl')y get_bloginfo('url')son equivalentes a llamar home_url()(también tenga en cuenta que el uso de home y siteurl como parámetros get_bloginfo está en desuso)
  • get_bloginfo('wpurl') es lo mismo que llamar site_url()

get_bloginfo('siteurl')está en desuso por mucho tiempo y actualmente es igual que get_bloginfo('url')( home_url()). Tendría más sentido igualar get_bloginfo('wpurl')( site_url()) pero por alguna razón no lo hace. Veo que el Codex dice lo contrario, bueno, el código es diferente de la documentación. Fuente .
Rarst

ok ... interesante y confuso. editando mi respuesta después de mirar el código!
Anu


1

IIRC, la principal diferencia entre home_url()/ get_site_url()y sus get_bloginfo()análogos es que home_url()/ get_site_url()devuelve el esquema http / https adecuado, mientras get_bloginfo()que no.


Incorrecto, get_bloginfo()simplemente llama site_url()/ home_url()funciones y devolverá el esquema adecuado tal como lo hacen.
Rarst

Oh genial! Parece que eso cambió desde la última vez que lo miré general-template.php. :)
Chip Bennett
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.