问题描述

我正在开发一个插件。

我想知道差异

get_bloginfo('url');  

get_site_url();

我得到相同的产出,那有什么区别呢?

最佳解决方案

  • 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 中记录为错误等于 wpurlit’s not in current code)

区别在于这两个功能链到不同的选项,这通常是一样的。

get_bloginfo('url')get_home_url()get_bloginfo('wpurl')进行比较比较适合于 get_site_url()。那么答案就是这些功能在不同层次的链条上。通常,更深层次的功能是 – 它的灵活性越高,滤镜输出通过的越少。

次佳解决方案

从’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()(也注意到不建议使用 home 和 siteurl 作为 get_bloginfo 参数)

  • get_bloginfo('wpurl')与调用 site_url()相同

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。