¿Cuál es la diferencia entre get_bloginfo('url') y get_site_url()?
Estoy desarrollando un plugin.
Quiero saber la diferencia entre
get_bloginfo('url');
y
get_site_url();
Obtengo la misma salida, entonces ¿cuál es la diferencia?
get_bloginfo('url')llama ahome_url()que llama aget_home_url()y lee la opciónhomeget_bloginfo('wpurl')llama asite_url()que llama aget_site_url()y lee la opciónsiteurlget_bloginfo('siteurl')yget_bloginfo('home')son argumentos obsoletos y devuelvenget_bloginfo('url')(el argumentositeurlestá documentado incorrectamente en el Codex como igual awpurl, no es así en el código actual)
La diferencia es que estas dos funciones acceden a diferentes opciones, que normalmente son iguales.
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 la cadena. Típicamente, cuanto más profunda es la función, más flexible es y menos filtros pasa la salida.
Desde 'wp-includes/general-template.php'
function get_bloginfo( $show = '', $filter = 'raw' ) {
switch( $show ) {
case 'home' : // OBSOLETO
case 'siteurl' : // OBSOLETO
_deprecated_argument([recortado]);
case 'url' :
$output = home_url();
break;
case 'wpurl' :
$output = site_url();
break;
Entonces:
get_bloginfo('home'),get_bloginfo('siteurl')yget_bloginfo('url')son equivalentes a llamar ahome_url()(también ten en cuenta que el uso de home y siteurl como parámetros de get_bloginfo está obsoleto)get_bloginfo('wpurl')es lo mismo que llamar asite_url()
get_bloginfo('siteurl') está obsoleto desde hace mucho tiempo y actualmente es lo mismo que get_bloginfo('url') (home_url()). Tendría más sentido que fuera igual a get_bloginfo('wpurl') (site_url()) pero por alguna razón no lo es. Veo que el Codex dice lo contrario, bueno, el código es diferente a la documentación. Fuente.
Rarst
Consulta los parámetros en el Codex: