WordPress: get_blog_list() の代用処理について

WordPress 3.x.x 以降のバージョンでは、マルチサイトの情報を列挙する、

 

get_blog_list();

 

この関数が非推奨となっているようです。(私は使った事なかったんですが)

 

そういった話を聞き、同様の目的のスマートな処理がないか、少し調べてみました。

(現状での)結果、

 

get_blogs_of_user(ユーザーID, 全取得か単一取得かのbool値);

 

この関数が使えそうです。

ブレンのサイトはWordPres 3.1なので、下記処理を実行しました。

 

<?php
  var_dump(get_blogs_of_user( 1, true));
?>

 

ブレンでは、「blog(メインサイト)」「news(追加サイト)」の2サイト構成になっており、

実行結果は、

 

array(2) {
  [1]=> object(stdClass)#xxxx (6)
  {
    ["userblog_id"]=> int(1)
    ["blogname"]=> string(9) "ブレン"
    ["domain"]=> string(7) "bren.jp"
    ["path"]=> string(1) "/"
    ["site_id"]=> string(1) "1"
    ["siteurl"]=> string(14) "http://bren.jp"
  }
  [2]=> object(stdClass)#xxxx (6) 
  {
    ["userblog_id"]=> int(2) 
    ["blogname"]=> string(24) "ニュース | ブレン" 
    ["domain"]=> string(7) "bren.jp" 
    ["path"]=> string(6) "/news/" 
    ["site_id"]=> string(1) "1" 
    ["siteurl"]=> string(19) "http://bren.jp/news"
  }
}

 

以上のようになりました。 もしお役に立てば幸いです。

参考サイト > http://codex.wordpress.org/WPMU_Functions/get_blogs_of_user

 

コメントする