Jaka jest różnica między get_bloginfo („url”) a get_site_url ()?


Odpowiedzi:


19
  • get_bloginfo('url')połączeń home_url()Połączenia get_home_url()czyta opcjęhome

  • get_bloginfo('wpurl')połączeń site_url()Połączenia get_site_url()czyta opcjęsiteurl

  • get_bloginfo('siteurl')i get_bloginfo('home')są przestarzałymi argumentami i zwracają get_bloginfo('url')( siteurlargument jest źle udokumentowany w Kodeksie jako równy wpurl, nie ma go w bieżącym kodzie )

Różnica polega na tym, że te dwie funkcje łączą różne opcje, które zwykle są takie same.

Bardziej właściwe byłoby porównanie get_bloginfo('url')z get_home_url()lub get_bloginfo('wpurl')do get_site_url(). Zatem odpowiedź brzmi: te funkcje są na innym poziomie w łańcuchu. Zazwyczaj im głębsza jest funkcja - tym bardziej jest ona elastyczna i tym mniej przepuszcza moc wyjściową filtrów.


3

Z „wp-włącza / ogólne-szablon.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;

Więc:

  • get_bloginfo('home'), get_bloginfo('siteurl')I get_bloginfo('url')są równoznaczne z wywołaniem home_url()(również pamiętać, że korzystanie z domu i SITEURL jako parametry get_bloginfo jest przestarzała)
  • get_bloginfo('wpurl') jest taki sam jak dzwonienie site_url()

get_bloginfo('siteurl')jest od dawna przestarzałe i obecnie jest taki sam jak get_bloginfo('url')( home_url()). Bardziej sensowne byłoby wyrównanie get_bloginfo('wpurl')( site_url()), ale z jakiegoś powodu tak nie jest. Widzę, że Codex mówi inaczej, dobrze - kod różni się od dokumentacji. Źródło .
Rarst

ok ... ciekawe i mylące. edytowanie mojej odpowiedzi po obejrzeniu kodu!
anu


1

IIRC, podstawowa różnica między home_url()/ get_site_url()i ich get_bloginfo()analogami polega na tym, że home_url()/ get_site_url()zwraca właściwy schemat http / https, podczas gdy get_bloginfo()nie.


Niepoprawnie, get_bloginfo()po prostu wywołuje site_url()/ home_url()funkcje i zwraca właściwy schemat tak jak oni.
Rarst

Och, schludnie! Wygląda na to, że to się zmieniło od ostatniego spojrzenia general-template.php. :)
Chip Bennett
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.