WordPress多站点获取当前博客信息_PHP教程
程序员文章站
2022-05-16 13:39:31
...
http://www.utubon.com/1495/wordpress-multisite-get-current-bolg-info
global $current_blog;
它的返回结果是:
stdClass Object ( [blog_id] => 3 [site_id] => 1 [domain] => demo.utubon.com [path] => /neighborhood/ [registered] => 2013-08-01 10:31:03 [last_updated] => 2013-08-01 02:31:03 [public] => 1 [archived] => 0 [mature] => 0 [spam] => 0 [deleted] => 0 [lang_id] => 0 )
也可以使用get_blog_details函数:
$current_blog = get_blog_details();
它的返回结果是:
stdClass Object ( [blog_id] => 3 [site_id] => 1 [domain] => demo.utubon.com [path] => /neighborhood/ [registered] => 2013-08-01 10:31:03 [last_updated] => 2013-08-01 02:31:03 [public] => 1 [archived] => 0 [mature] => 0 [spam] => 0 [deleted] => 0 [lang_id] => 0 [blogname] => Neighborhood [siteurl] => http://demo.utubon.com/neighborhood [post_count] => ) // 比global $current_blog的信息更多
这基本上就满足了我们的需要,不过还有一个比较绕弯子的方法,使用get_blog_id_from_url函数。如果你的多站点是使用子目录的形式,就使用:
$blog_id = get_blog_id_from_url("example.com", "/blog1/");
如果使用的是子域名的形式,就使用:
$blog_id = get_blog_id_from_url("blog1.example.com");
而上面的这些参数,我们可以使用$_SERVER['SERVER_NAME']和$_SERVER["REQUEST_URI"]获取。
获得$blog_id之后各种事情就好办了。