コード例 #1
0
 function get_blogs_for_user($user_id = null)
 {
     global $bp, $wpdb;
     if (!$bp->blogs) {
         bp_blogs_setup_globals();
     }
     if (!$user_id) {
         $user_id = $bp->displayed_user->id;
     }
     // Show logged in users their hidden blogs.
     if (!bp_is_home()) {
         $blog_ids = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT b.blog_id FROM {$bp->blogs->table_name} b LEFT JOIN {$wpdb->base_prefix}blogs wb ON b.blog_id = wb.blog_id WHERE wb.public = 1 AND wb.deleted = 0 AND wb.spam = 0 AND wb.mature = 0 AND wb.archived = '0' AND b.user_id = %d ", $user_id));
     } else {
         $blog_ids = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT b.blog_id FROM {$bp->blogs->table_name} b LEFT JOIN {$wpdb->base_prefix}blogs wb ON b.blog_id = wb.blog_id WHERE wb.deleted = 0 AND wb.spam = 0 AND wb.mature = 0 AND wb.archived = '0' AND b.user_id = %d ", $user_id));
     }
     $total_blog_count = BP_Blogs_Blog::total_blog_count($user_id);
     for ($i = 0; $i < count($blog_ids); $i++) {
         $blogs[] = array('id' => $blog_ids[$i], 'siteurl' => get_blog_option($blog_ids[$i], 'siteurl'), 'title' => get_blog_option($blog_ids[$i], 'blogname'), 'description' => get_blog_option($blog_ids[$i], 'blogdescription'));
     }
     return array('blogs' => $blogs, 'count' => $total_blog_count);
 }