get_bloginfo('url')和get_site_url()有什么区别?


Answers:


19
  • get_bloginfo('url')通话home_url()通话get_home_url()读取选项home

  • get_bloginfo('wpurl')通话site_url()通话get_site_url()读取选项siteurl

  • get_bloginfo('siteurl')并且get_bloginfo('home')已弃用参数并返回get_bloginfo('url')siteurl参数在Codex中记录为错误,等于wpurl当前代码中没有

不同之处在于,这两个功能链具有不同的选项,通常是相同的。

这将是更适当的比较get_bloginfo('url')get_home_url()get_bloginfo('wpurl')get_site_url()。那么答案是这些功能处于不同的层次。通常,功能越深-功能越灵活,通过的过滤器输出越少。


3

来自'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;

所以:

  • get_bloginfo('home')get_bloginfo('siteurl')并且get_bloginfo('url')等效于调用home_url()(还请注意,不赞成将homesiteurl用作get_bloginfo参数)
  • get_bloginfo('wpurl') 和打电话一样 site_url()

get_bloginfo('siteurl')是长弃用,目前相同get_bloginfo('url')home_url())。使其等于get_bloginfo('wpurl')site_url())更有意义,但由于某些原因,它不等于。我看到Codex另有说明,代码与文档不同。来源
2011年

好...有趣而令人困惑。查看代码后编辑我的答案!
anu


1

IIRC,home_url()/ get_site_url()及其get_bloginfo()类似物之间的主要区别是home_url()/ get_site_url()返回正确的http / https方案,而get_bloginfo()没有。


错误的get_bloginfo()只是调用site_url()/ home_url()函数,并且将返回正确的方案。
2011年

哦,整洁!自从我上次观看以来,情况似乎发生了变化general-template.php。:)
Chip Bennett
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.