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); }