From cda3031b06fae640a9f0fc38c6da2431fc3f3b36 Mon Sep 17 00:00:00 2001
From: wpmuguru
Date: Wed, 27 Jan 2010 19:13:00 +0000
Subject: [PATCH] Improvements to queries in populate_network(), also gettext,
props nacin, see #11816
git-svn-id: http://svn.automattic.com/wordpress/trunk@12880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
---
wp-admin/includes/schema.php | 93 +++++++++++++++++++++++-------------
wp-includes/load.php | 5 +-
wp-includes/ms-functions.php | 7 ++-
3 files changed, 67 insertions(+), 38 deletions(-)
diff --git a/wp-admin/includes/schema.php b/wp-admin/includes/schema.php
index 8ae0ef1814..b9ccbe04f0 100644
--- a/wp-admin/includes/schema.php
+++ b/wp-admin/includes/schema.php
@@ -630,7 +630,7 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
die( 'You must provide a site name!' );
// check for network collision
- $existing_network = $wpdb->get_var( $wpdb->prepare( "SELECT id FROM {$wpdb->site} WHERE id = %d", $network_id ) );
+ $existing_network = $wpdb->get_var( $wpdb->prepare( "SELECT id FROM $wpdb->site WHERE id = %d", $network_id ) );
if ( $existing_network == $network_id )
die( 'That network already exists!' );
@@ -645,25 +645,25 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
else
$allowed_themes = array( $stylesheet => true );
- if ( $network_id == 1 )
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->site." ( id, domain, path ) VALUES ( NULL, %s, %s )", $domain, $path ) );
- else
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->site." ( id, domain, path ) VALUES ( %d, %s, %s )", $network_id, $domain, $path ) );
-
- $network_id = $wpdb->insert_id;
-
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'site_name', %s)", $network_id, $site_name ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'admin_email', %s)", $network_id, $site_user->user_email ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'admin_user_id', %d)", $network_id, $site_user->ID ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'registration', 'none')", $network_id ) );
- if ( !is_multisite() ) {
- $wpdb->query( "INSERT INTO " . $wpdb->sitecategories . " ( cat_ID, cat_name, category_nicename, last_updated ) VALUES (1, 'Uncategorized', 'uncategorized', NOW())" );
- $wpdb->query( "INSERT INTO " . $wpdb->sitecategories . " ( cat_ID, cat_name, category_nicename, last_updated ) VALUES (2, 'Blogroll', 'blogroll', NOW())" );
+ if ( 1 == $network_id ) {
+ $wpdb->insert( $wpdb->site, array( 'domain' => $domain, 'path' => $path ) );
+ $network_id = $wpdb->insert_id;
+ } else {
+ $wpdb->insert( $wpdb->site, array( 'domain' => $domain, 'path' => $path, 'network_id' => $network_id ) );
}
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'upload_filetypes', 'jpg jpeg png gif mp3 mov avi wmv midi mid pdf' )", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'blog_upload_space', '10' )", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'fileupload_maxk', '1500' )", $network_id ) );
+
if ( !is_multisite() ) {
+
+ /* translators: Default category slug */
+ $cat_slug = sanitize_title( _x( 'Uncategorized', 'Default category slug' ) );
+
+ $wpdb->insert( $wpdb->sitecategories, array( 'site_id' => $network_id, 'cat_ID' => 1, 'cat_name' => __('Uncategorized'), 'category_nicename' => $cat_slug, 'last_updated' => current_time( 'mysql', true ) ) );
+
+ /* translators: Default link category slug */
+ $cat_slug = sanitize_title( _x( 'Blogroll', 'Default link category slug' ) );
+
+ $wpdb->insert( $wpdb->sitecategories, array( 'site_id' => $network_id, 'cat_ID' => 2, 'cat_name' => __('Blogroll'), 'category_nicename' => $cat_slug, 'last_updated' => current_time( 'mysql', true ) ) );
+
$site_admins = array( $site_user->user_login );
$users = get_users_of_blog();
if ( $users ) {
@@ -675,11 +675,8 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
} else {
$site_admins = get_site_option( 'site_admins' );
}
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'site_admins', '" . serialize( $site_admins ) . "' )", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'allowedthemes', '" . serialize( $allowed_themes ) . "' )", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'illegal_names', '" . serialize( array( "www", "web", "root", "admin", "main", "invite", "administrator" ) ) . "' )", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'wpmu_upgrade_site', '{$wp_db_version}')", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'welcome_email', 'Dear User,
+
+ $welcome_email = __( 'Dear User,
Your new SITE_NAME blog has been successfully set up at:
BLOG_URL
@@ -692,17 +689,45 @@ Login Here: BLOG_URLwp-login.php
We hope you enjoy your new blog.
Thanks!
---The Team @ SITE_NAME')", $network_id ) );
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'first_post', 'Welcome to SITE_NAME. This is your first post. Edit or delete it, then start blogging!' )", $network_id ) );
- //@todo - network admins should have a method of editing the network siteurl (used for cookie hash)
- $wpdb->query( $wpdb->prepare( "INSERT INTO ".$wpdb->sitemeta." (meta_id, site_id, meta_key, meta_value) VALUES (NULL, %d, 'siteurl', %s)", $network_id, get_option( 'siteurl' ) ) );
+--The Team @ SITE_NAME' );
+
+ $sitemeta = array(
+ 'site_name' => $site_name,
+ 'admin_email' => $site_user->user_email,
+ 'admin_user_id' => $site_user->ID,
+ 'registration' => 'none',
+ 'upload_filetypes' => 'jpg jpeg png gif mp3 mov avi wmv midi mid pdf',
+ 'blog_upload_space' => 10,
+ 'fileupload_maxk' => 1500,
+ 'site_admins' => $site_admins,
+ 'allowedthemes' => $allowed_themes,
+ 'illegal_names' => array( 'www', 'web', 'root', 'admin', 'main', 'invite', 'administrator' ),
+ 'wpmu_upgrade_site' => $wp_db_version,
+ 'welcome_email' => $welcome_email,
+ 'first_post' => __( 'Welcome to SITE_NAME. This is your first post. Edit or delete it, then start blogging!' ),
+ // @todo - network admins should have a method of editing the network siteurl (used for cookie hash)
+ 'siteurl' => get_option( 'siteurl' )
+ );
+
+ $insert = '';
+ foreach ( $sitemeta as $meta_key => $meta_value ) {
+ $meta_key = $wpdb->escape( $meta_key );
+ if ( is_array( $meta_value ) )
+ $meta_value = serialize( $meta_value );
+ $meta_value = $wpdb->escape( $meta_value );
+ if ( !empty( $insert ) )
+ $insert .= ', ';
+ $insert .= "( $network_id, '$meta_key', '$meta_value')";
+ }
+ $wpdb->query( "INSERT INTO $wpdb->sitemeta ( site_id, meta_key, meta_value ) VALUES " . $insert );
$current_site->domain = $domain;
$current_site->path = $base;
$current_site->site_name = ucfirst( $domain );
if ( !is_multisite() ) {
- $wpdb->query( $wpdb->prepare( "INSERT INTO {$wpdb->blogs} (site_id, domain, path) VALUES (%s, %s, %s)", $network_id, $domain, $path ) );
+ $wpdb->insert( $wpdb->blogs, array( 'site_id' => $network_id, 'domain' => $domain, 'path' => $path ) );
+
update_usermeta( $site_user->ID, 'source_domain', $domain );
update_usermeta( $site_user->ID, 'primary_blog', 1 );
}
@@ -726,11 +751,13 @@ Thanks!
$vhost_ok = true;
}
if ( !$vhost_ok ) {
- $msg = "Warning! Wildcard DNS may not be configured correctly!
";
- $msg .= "To use the subdomain feature of WordPress MU you must have a wildcard entry in your dns. The installer attempted to contact a random hostname ($hostname) on your domain but failed. It returned this error message:
$errstr
From the README.txt:
";
- $msg .= " If you want to host blogs of the form http://blog.domain.tld/ where domain.tld is the domain name of your machine then you must add a wildcard record to your DNS records.
-This usually means adding a '*' hostname record pointing at your webserver in your DNS configuration tool. Matt has a more detailed explanation on his blog. If you still have problems, these forum messages may help.
";
- $msg .= "You can still use your site but any subdomain you create may not be accessible. This check is not foolproof so ignore if you know your dns is correct.
";
+ // @todo Update this to reflect the merge. Also: Multisite readme file, or remove the tags.
+ $msg = '' . esc_html__( 'Warning! Wildcard DNS may not be configured correctly!' ) . '
';
+ $msg .= '' . __( 'To use the subdomain feature of WordPress MU you must have a wildcard entry in your dns. The installer attempted to contact a random hostname ($hostname) on your domain but failed. It returned this error message:' ) . '
';
+ $msg .= '
' . $errstr . '
';
+ $msg .= '' . __( 'From the README.txt:' ) . '
';
+ $msg .= '' . __( "If you want to host blogs of the form http://blog.domain.tld/ where domain.tld is the domain name of your machine then you must add a wildcard record to your DNS records. This usually means adding a '*' hostname record pointing at your webserver in your DNS configuration tool. Matt has a more detailed explanation on his blog. If you still have problems, these forum messages may help." ) . '
';
+ $msg .= '' . __( 'You can still use your site but any subdomain you create may not be accessible. This check is not foolproof so ignore if you know your dns is correct.' ) . '
';
}
}
return $msg;
diff --git a/wp-includes/load.php b/wp-includes/load.php
index 05a6a55218..67c7041f5c 100644
--- a/wp-includes/load.php
+++ b/wp-includes/load.php
@@ -298,7 +298,10 @@ function wp_set_wpdb_vars() {
$wpdb->field_types = array( 'post_author' => '%d', 'post_parent' => '%d', 'menu_order' => '%d', 'term_id' => '%d', 'term_group' => '%d', 'term_taxonomy_id' => '%d',
'parent' => '%d', 'count' => '%d','object_id' => '%d', 'term_order' => '%d', 'ID' => '%d', 'commment_ID' => '%d', 'comment_post_ID' => '%d', 'comment_parent' => '%d',
'user_id' => '%d', 'link_id' => '%d', 'link_owner' => '%d', 'link_rating' => '%d', 'option_id' => '%d', 'blog_id' => '%d', 'meta_id' => '%d', 'post_id' => '%d',
- 'user_status' => '%d', 'umeta_id' => '%d', 'comment_karma' => '%d', 'comment_count' => '%d' );
+ 'user_status' => '%d', 'umeta_id' => '%d', 'comment_karma' => '%d', 'comment_count' => '%d',
+ // multisite:
+ 'active' => '%d', 'cat_id' => '%d', 'deleted' => '%d', 'lang_id' => '%d', 'mature' => '%d', 'public' => '%d', 'site_id' => '%d', 'spam' => '%d',
+ );
$prefix = $wpdb->set_prefix( $table_prefix );
diff --git a/wp-includes/ms-functions.php b/wp-includes/ms-functions.php
index 5c17cd0dc0..a5dcce8b19 100644
--- a/wp-includes/ms-functions.php
+++ b/wp-includes/ms-functions.php
@@ -1466,7 +1466,7 @@ function wpmu_welcome_notification($blog_id, $user_id, $password, $title, $meta
$welcome_email = stripslashes( get_site_option( 'welcome_email' ) );
if ( $welcome_email == false )
- $welcome_email = stripslashes( __( "Dear User,
+ $welcome_email = stripslashes( __( 'Dear User,
Your new SITE_NAME blog has been successfully set up at:
BLOG_URL
@@ -1476,11 +1476,10 @@ Username: USERNAME
Password: PASSWORD
Login Here: BLOG_URLwp-login.php
-We hope you enjoy your new weblog.
+We hope you enjoy your new blog.
Thanks!
---The WordPress Team
-SITE_NAME" ) );
+--The Team @ SITE_NAME' ) );
$url = get_blogaddress_by_id($blog_id);
$user = new WP_User($user_id);