Is_main_site()始终返回True

时间:2014-12-12 作者:Adam

我正在WordPress Multisite上使用is\\u main\\u site(),当我使用调试器设置断点和视图时,它会在主站点和我创建的子站点上返回true。看看代码,如果$site\\u id和$current\\u site->blog\\u id应该是访问同一事物的两种不同方式(你当前所在站点的id),那么对于多站点安装,我看不出它会返回除true以外的其他内容。我疯了吗?为什么这似乎不起作用?我正在运行WordPress 4.0.1。

function is_main_site( $site_id = null ) {
    // This is the current network\'s information; \'site\' is old terminology.
    global $current_site;

    if ( ! is_multisite() )
        return true;

    if ( ! $site_id )
        $site_id = get_current_blog_id();

    return (int) $site_id === (int) $current_site->blog_id;
}

1 个回复
SO网友:kaiser

我不是把它称为钩子内部,而是直接把它称为MU插件中的第一件事。

此时,您请求的所有信息都将不可用。这是在任何挂钩和WP完全加载之前运行的。

使用钩状物wp_loaded, admin_init, after_setup_theme ... 什么最符合你的目的。

结束

相关推荐

Multisite Widget/Content

我正在使用WordPress multisite,需要在侧边栏中显示所有子网站的内容。这是一个由50多个站点组成的网络,因此每隔几天用此内容更新所有50多个侧栏是不现实的。我找到的一个解决方案是简单地将我想要的内容插入侧边栏。虽然我不希望我的客户机编辑这个文件,但我希望他们使用TinyMCE编辑器而不是HTML。另一个想法是在每个子网站中嵌入一个iframe,让我的客户端更新iframe引用的页面。我的最后一个想法是用TinyMCE编辑器创建一个插件,将代码注入侧栏。php文件保存时,虽然我不知道插件是否