global $name_or_url; global $begin_wrap; global $end_wrap; // determine whether using vhosts or not for both functions to use $vhosts = (defined( "VHOST" ) && constant( "VHOST" ) == 'yes' ); function echoArrayBlogList($arrayName, $name_sort) { global $wpdb; global $name_or_url; global $begin_wrap; global $end_wrap; global $vhosts; $intArrayCount = 0; $bid = ''; // if blog name requested, then get it if ($name_or_url == "name") { $blogs = array(); $i = 1; foreach ($arrayName as $blog) { $blogname = get_blog_option( $blog['blog_id'], "blogname"); $blogs[$i] = array('key' => strtolower($blogname), // give it a key to sort by 'blog_name' => $blogname, 'blog_id' => $blog['blog_id'], 'domain' => $blog['domain']); $i++; } // now sort if requested if($name_sort) { asort($blogs); } // replace array $arrayName = $blogs; } foreach ($arrayName as $blog) { // get blog url depending on vhost or not-vhost installtion if( $vhosts ) $tmp_domain = $blog['domain']; else $tmp_domain = get_blog_option( $blog['blog_id'], "siteurl"); if ($name_or_url == "name") { $tmp_display = $blog['blog_name']; } else { $tmp_display = $tmp_domain; } // get blog url depending on vhost or not-vhost installtion if( $vhosts ) echo $begin_wrap . "" . $tmp_display . "" . $end_wrap; else echo $begin_wrap . "" . $tmp_display . "" . $end_wrap; } } function list_all_wpmu_blogs($tmp_limit, $tmp_name_or_url, $tmp_begin_wrap, $tmp_end_wrap, $tmp_order,$filter = 'a') { global $wpdb; global $name_or_url; global $begin_wrap; global $end_wrap; global $vhosts; if ($tmp_limit != "") { $limit = "LIMIT " . $tmp_limit; } if ($tmp_name_or_url == "" || $tmp_name_or_url == "name") { $name_or_url = "name"; // did user request sort by blog_name $name_sort = ($tmp_order == "blog_name"); } else { $name_or_url = "url"; $name_sort = false; } if (tmp_begin_wrap == "" || tmp_end_wrap == "" ) { $begin_wrap = "

"; $end_wrap = "

"; } else { $begin_wrap = $tmp_begin_wrap; $end_wrap = $tmp_end_wrap; } if ($tmp_order == "" || $tmp_order == "updated") { $order = "ORDER BY last_updated DESC"; } else if ($tmp_order == "first_created") { $order = "ORDER BY blog_id ASC"; } else if ($tmp_order == "last_created") { $order = "ORDER BY blog_id DESC"; } else if ($tmp_order == "domain") { $order = "ORDER BY domain ASC"; } // if vhosts retrieve all the data from global table in one query if($vhosts) { $extra = "domain, path, "; } $where = ''; if ($filter) { $where = "AND UPPER(blog_name) LIKE '".strtoupper($filter)."%' "; } $blog_list = $wpdb->get_results( "SELECT " . $extra . "blog_id, last_updated FROM " . $wpdb->blogs. " WHERE public = '1' AND archived = '0' AND mature = '0' AND spam = '0' AND deleted ='0'" . $where . $order . " " . $limit . "", ARRAY_A ); if (count($blog_list) < 2 ){ // we don't want to display the admin blog so we return this even if there is one blog echo "

This are currently no active blogs

"; } else { echoArrayBlogList($blog_list, $name_sort); } }