Get it All
Together

Summary:  Creates a new blog with the id $blog_id and the title $blog_title

Detail:  This is a very complex function that involves calling the upgrade-functions.php file and using a bunch of it’s functions to complete its task.  This is definitely a function which – in the absence of a specific need – is better off left on its own and accessed through the API.

Summary:  Creates an entry in the wp_blogs table (or equivalent) for a new blog with the domain $domain, the path $path and within the site $site_id.

Detail:  This is one of the functions called when a new blog is created.  It’s not the whole process, and unless you have a specific reason for calling it, is probably best left to itself.  It only really performs two functions, the first being the insertion of the new blog into the database, and the second being a refresh on the wp_cache to include the new blog.

Summary:  Returns the number of blogs that exist on either the current domain or the domain $id.

Detail:  This function counts the number of blogs on a give domain.  By default, it checks the current domain, but if $id is set, another domain can be checked as well.  The number of blogs is cached in the dB for 60 seconds, but queries after that 60 seconds elicit another query of the dB.

Summary:  Returns the value $pref of blog $id from the wp-blogs or equivalent table.

Detail:  This function returns a value from one of the fields of the wp-blogs or equivalent table.  It first checks the get_blog_details() function to see if the blog even exists, and if so, queries the dB for the value.

Summary:  This function updates the status $pref of blog $id to value $value.

Detail:  This function directly sets the status of a blog in the dB.  If the $refresh value is set to 1, which it is by default, the status of the blog is refreshed in the wp-cache using the refresh_blog_details() function.

Additionally, if the blog is set to a “spam” or “ham” blog, the function calls the make_spam_blog or the make_ham_blog actions, respectively.

Summary:  These functions add, delete or update the given blog_option, respectively.

Detail:  All three of these functions use the switch_to_blog() function to navigate to the selected blog and switch it’s option values.  In fact, they’re all pretty good examples of how that function can be used to toggle between blogs.  Apart from the fact that one deletes and the other two set a variable, there really sn’t much difference between the functions.  All set their updated values to the wp-cache.

Summary:  Function returns the value of the specified option $setting.

Detail:  This is a surprisingly complex function that returns the value of the specified options $setting.  It first checks for the existence of a wp-cache value, and if none exists, queries the database.

The rest of the function complexity is simply to make sure that a properly-validated URL is returned if the requested option is the site URL.