Example #1
0
function wp_install($blog_title, $user_name, $user_email, $public, $deprecated = '', $user_password = '')
{
    global $wpdb;
    $base = '/';
    $domain = JQUERY_STAGING_PREFIX . 'jquery.com';
    wp_check_mysql_version();
    wp_cache_flush();
    make_db_current_silent();
    populate_options();
    populate_roles();
    $user_id = wp_create_user($user_name, trim($user_password), $user_email);
    $user = new WP_User($user_id);
    $user->set_role('administrator');
    $guess_url = wp_guess_url();
    foreach ($wpdb->tables('ms_global') as $table => $prefixed_table) {
        $wpdb->{$table} = $prefixed_table;
    }
    install_network();
    populate_network(1, $domain, $user_email, 'jQuery Network', $base, false);
    update_site_option('site_admins', array($user->user_login));
    update_site_option('allowedthemes', array());
    $wpdb->insert($wpdb->blogs, array('site_id' => 1, 'domain' => $domain, 'path' => $base, 'registered' => current_time('mysql')));
    $blog_id = $wpdb->insert_id;
    update_user_meta($user_id, 'source_domain', $domain);
    update_user_meta($user_id, 'primary_blog', $blog_id);
    if (!($upload_path = get_option('upload_path'))) {
        $upload_path = substr(WP_CONTENT_DIR, strlen(ABSPATH)) . '/uploads';
        update_option('upload_path', $upload_path);
    }
    update_option('fileupload_url', get_option('siteurl') . '/' . $upload_path);
    jquery_install_remaining_sites($user);
    wp_new_blog_notification($blog_title, $guess_url, $user_id, $message = __('The password you chose during the install.'));
    wp_cache_flush();
    return array('url' => $guess_url, 'user_id' => $user_id, 'password' => $user_password, 'password_message' => $message);
}
Example #2
0
 /**
  * Installs the site.
  *
  * Runs the required functions to set up and populate the database,
  * including primary admin user and initial options.
  *
  * @since 2.1.0
  *
  * @param string $blog_title    Blog title.
  * @param string $user_name     User's username.
  * @param string $user_email    User's email.
  * @param bool   $public        Whether blog is public.
  * @param string $deprecated    Optional. Not used.
  * @param string $user_password Optional. User's chosen password. Default empty (random password).
  * @param string $language      Optional. Language chosen. Default empty.
  * @return array Array keys 'url', 'user_id', 'password', and 'password_message'.
  */
 function wp_install($blog_title, $user_name, $user_email, $public, $deprecated = '', $user_password = '', $language = '')
 {
     if (!empty($deprecated)) {
         _deprecated_argument(__FUNCTION__, '2.6');
     }
     wp_check_mysql_version();
     wp_cache_flush();
     make_db_current_silent();
     populate_options();
     populate_roles();
     update_option('blogname', $blog_title);
     update_option('admin_email', $user_email);
     update_option('blog_public', $public);
     if ($language) {
         update_option('WPLANG', $language);
     }
     $guessurl = wp_guess_url();
     update_option('siteurl', $guessurl);
     // If not a public blog, don't ping.
     if (!$public) {
         update_option('default_pingback_flag', 0);
     }
     /*
      * Create default user. If the user already exists, the user tables are
      * being shared among blogs. Just set the role in that case.
      */
     $user_id = username_exists($user_name);
     $user_password = trim($user_password);
     $email_password = false;
     if (!$user_id && empty($user_password)) {
         $user_password = wp_generate_password(12, false);
         $message = __('<strong><em>Note that password</em></strong> carefully! It is a <em>random</em> password that was generated just for you.');
         $user_id = wp_create_user($user_name, $user_password, $user_email);
         update_user_option($user_id, 'default_password_nag', true, true);
         $email_password = true;
     } elseif (!$user_id) {
         // Password has been provided
         $message = '<em>' . __('Your chosen password.') . '</em>';
         $user_id = wp_create_user($user_name, $user_password, $user_email);
     } else {
         $message = __('User already exists. Password inherited.');
     }
     $user = new WP_User($user_id);
     $user->set_role('administrator');
     wp_install_defaults($user_id);
     wp_install_maybe_enable_pretty_permalinks();
     flush_rewrite_rules();
     wp_new_blog_notification($blog_title, $guessurl, $user_id, $email_password ? $user_password : __('The password you chose during the install.'));
     wp_cache_flush();
     /**
      * Fires after a site is fully installed.
      *
      * @since 3.9.0
      *
      * @param WP_User $user The site owner.
      */
     do_action('wp_install', $user);
     return array('url' => $guessurl, 'user_id' => $user_id, 'password' => $user_password, 'password_message' => $message);
 }
/**
 * this function overrides the built in wordpress  variant
 * 
 * @param object $blog_title
 * @param object $user_name
 * @param object $user_email
 * @param object $public
 * @param object $deprecated [optional]
 * @return 
 */
function wp_install($blog_title, $user_name, $user_email, $public, $deprecated = '')
{
    global $wp_rewrite, $wpdb;
    //wp_check_mysql_version();
    wp_cache_flush();
    /**** changes start here ***/
    switch (DB_TYPE) {
        case 'sqlite':
            require PDODIR . '/driver_sqlite/schema.php';
            installdb();
            break;
        case 'mysql':
            make_db_current_silent();
            break;
    }
    /**** changes end ***/
    $wpdb->suppress_errors();
    populate_options();
    populate_roles();
    update_option('blogname', $blog_title);
    update_option('admin_email', $user_email);
    update_option('blog_public', $public);
    $guessurl = wp_guess_url();
    update_option('siteurl', $guessurl);
    // If not a public blog, don't ping.
    if (!$public) {
        update_option('default_pingback_flag', 0);
    }
    // Create default user.  If the user already exists, the user tables are
    // being shared among blogs.  Just set the role in that case.
    $user_id = username_exists($user_name);
    if (!$user_id) {
        $random_password = wp_generate_password();
        $message = __('<strong><em>Note that password</em></strong> carefully! It is a <em>random</em> password that was generated just for you.<br><br>���' . $random_password);
        $user_id = wp_create_user($user_name, $random_password, $user_email);
        update_usermeta($user_id, 'default_password_nag', true);
    } else {
        $random_password = '';
        $message = __('User already exists.  Password inherited.');
    }
    $user = new WP_User($user_id);
    $user->set_role('administrator');
    wp_install_defaults($user_id);
    $wp_rewrite->flush_rules();
    wp_new_blog_notification($blog_title, $guessurl, $user_id, $random_password);
    wp_cache_flush();
    return array('url' => $guessurl, 'user_id' => $user_id, 'password' => $random_password, 'password_message' => $message);
}
Example #4
0
/**
 * Install an empty blog.
 *
 * Creates the new blog tables and options. If calling this function
 * directly, be sure to use switch_to_blog() first, so that $wpdb
 * points to the new blog.
 *
 * @since MU
 * @uses make_db_current_silent()
 * @uses populate_roles()
 *
 * @param int $blog_id The value returned by insert_blog().
 * @param string $blog_title The title of the new site.
 */
function install_blog($blog_id, $blog_title = '')
{
    global $wpdb, $table_prefix, $wp_roles;
    $wpdb->suppress_errors();
    // Cast for security
    $blog_id = (int) $blog_id;
    require_once ABSPATH . 'wp-admin/includes/upgrade.php';
    if ($wpdb->get_results("SELECT ID FROM {$wpdb->posts}")) {
        die(__('<h1>Already Installed</h1><p>You appear to have already installed WordPress. To reinstall please clear your old database tables first.</p>') . '</body></html>');
    }
    $wpdb->suppress_errors(false);
    $url = get_blogaddress_by_id($blog_id);
    // Set everything up
    make_db_current_silent();
    populate_options();
    populate_roles();
    $wp_roles->_init();
    // fix url.
    update_option('siteurl', $url);
    update_option('home', $url);
    update_option('fileupload_url', $url . "files");
    update_option('upload_path', UPLOADBLOGSDIR . "/{$blog_id}/files");
    update_option('blogname', stripslashes($blog_title));
    update_option('admin_email', '');
    $wpdb->update($wpdb->options, array('option_value' => ''), array('option_name' => 'admin_email'));
    // remove all perms
    $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->usermeta} WHERE meta_key = %s", $table_prefix . 'user_level'));
    $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->usermeta} WHERE meta_key = %s", $table_prefix . 'capabilities'));
    $wpdb->suppress_errors(false);
}
Example #5
0
 /**
  * Run WordPress Upgrade functions.
  *
  * {@internal Missing Long Description}}
  *
  * @since unknown
  *
  * @return null
  */
 function wp_upgrade()
 {
     global $wp_current_db_version, $wp_db_version, $wpdb;
     $wp_current_db_version = __get_option('db_version');
     // We are up-to-date.  Nothing to do.
     if ($wp_db_version == $wp_current_db_version) {
         return;
     }
     if (!is_blog_installed()) {
         return;
     }
     wp_check_mysql_version();
     wp_cache_flush();
     pre_schema_upgrade();
     make_db_current_silent();
     upgrade_all();
     if (is_multisite() && is_main_site()) {
         upgrade_network();
     }
     wp_cache_flush();
     if (is_multisite()) {
         if ($wpdb->get_row("SELECT blog_id FROM {$wpdb->blog_versions} WHERE blog_id = '{$wpdb->blogid}'")) {
             $wpdb->query("UPDATE {$wpdb->blog_versions} SET db_version = '{$wp_db_version}' WHERE blog_id = '{$wpdb->blogid}'");
         } else {
             $wpdb->query("INSERT INTO {$wpdb->blog_versions} ( `blog_id` , `db_version` , `last_updated` ) VALUES ( '{$wpdb->blogid}', '{$wp_db_version}', NOW());");
         }
     }
 }
Example #6
0
 function xpress_oninstall_base($module, $mydirname)
 {
     // transations on module install
     global $ret;
     // TODO :-D
     // for Cube 2.1
     if (defined('XOOPS_CUBE_LEGACY')) {
         $root =& XCube_Root::getSingleton();
         $root->mDelegateManager->add('Legacy.Admin.Event.ModuleInstall.' . ucfirst($mydirname) . '.Success', 'xpress_message_append_oninstall');
         $root->mDelegateManager->add('Legacy.Admin.Event.ModuleInstall.' . ucfirst($mydirname) . '.Fail', 'xpress_message_append_oninstall_err');
         $ret = array();
     } else {
         if (!is_array($ret)) {
             $ret = array();
         }
     }
     $db =& Database::getInstance();
     $mid = $module->getVar('mid');
     if (defined('XOOPS_CUBE_LEGACY')) {
         $ret[] = "********************************* Install Log ********************************<br />";
     } else {
         $ret[] = '<h4 style="border-bottom: 1px dashed rgb(0, 0, 0); text-align: left; margin-bottom: 0px;">Install Log</h4>';
     }
     //xpress
     global $wpdb, $wp_rewrite, $wp_queries, $table_prefix, $wp_db_version, $wp_roles, $wp_query, $wp_embed;
     global $xoops_config;
     define("WP_INSTALLING", true);
     define('WP_FIRST_INSTALL', true);
     // For WPMU2.8
     $site_url = XOOPS_URL . "/modules/" . $mydirname;
     $mydirpath = XOOPS_ROOT_PATH . '/modules/' . $mydirname;
     $path = $mydirpath . '/';
     $site_name = ucfirst($mydirname) . ' ' . _MI_XP2_NAME;
     // permission and wordpress files check
     require_once $path . 'include/pre_check.php';
     if (!xp_permission_check($mydirname, $mydirpath)) {
         if (!defined('XOOPS_CUBE_LEGACY')) {
             $ret = $GLOBALS["err_log"];
             $ret[] = "<br /><span style=\"color:#ff0000;\">The uninstallation of the module is executed now. </span><br />";
             $ret[] = xoops_module_uninstall($mydirname);
         }
         return false;
     }
     // install WordPress
     if (file_exists($path . 'wp-load.php')) {
         require_once $path . 'wp-load.php';
     } else {
         require_once $path . 'wp-config.php';
     }
     include_once $mydirpath . '/wp-admin/upgrade-functions.php';
     wp_cache_flush();
     make_db_current_silent();
     $ret[] = "The data base of wordpress was made by prefix {$table_prefix}.<br />";
     $option_desc = __('WordPress web address');
     $wpdb->query("INSERT INTO {$wpdb->options} (blog_id, option_name,option_value, autoload) VALUES ('0', 'siteurl','{$site_url}', 'yes')");
     $wpdb->query("INSERT INTO {$wpdb->options} (blog_id, option_name,option_value, autoload) VALUES ('0', 'home','{$site_url}', 'yes')");
     populate_options();
     populate_roles();
     // create XPressME table
     $xp_prefix = preg_replace('/wordpress/', 'wp', $mydirname);
     $views_table = XOOPS_DB_PREFIX . '_' . $xp_prefix . '_views';
     $charset_collate = '';
     if (version_compare(mysql_get_server_info(), '4.1.0', '>=')) {
         if (!empty($wpdb->charset)) {
             $charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}";
         }
         if (!empty($wpdb->collate)) {
             $charset_collate .= " COLLATE {$wpdb->collate}";
         }
     }
     $views_queries = "CREATE TABLE {$views_table} (\n  \t\tblog_id bigint(20) unsigned NOT NULL default '0',\n  \t\tpost_id bigint(20) unsigned NOT NULL default '0',\n  \t\tpost_views bigint(20) unsigned NOT NULL default '0',\n  \t\tKEY post_id (post_id)\n\t\t){$charset_collate};";
     dbDelta($views_queries);
     $ret[] = "{$views_table} table of XPressME was made.<br />";
     $d3forum_link = XOOPS_DB_PREFIX . '_' . $xp_prefix . '_d3forum_link';
     $views_queries = "CREATE TABLE {$d3forum_link} (\n  \t\tcomment_ID bigint(20) unsigned NOT NULL default '0',\n  \t\tpost_id int(10) unsigned NOT NULL default '0' ,\n  \t\twp_post_ID bigint(20) unsigned NOT NULL default '0',\n  \t\tforum_id bigint(20) unsigned NOT NULL default '0',\n  \t\tblog_id bigint(20) unsigned NOT NULL default '0',\n  \t\tKEY post_id (post_id)\n\t\t){$charset_collate};";
     dbDelta($views_queries);
     $ret[] = "{$d3forum_link} table of XPressME was made.<br />";
     $group_role = XOOPS_DB_PREFIX . '_' . $xp_prefix . '_group_role';
     $views_queries = "CREATE TABLE {$group_role} (\n  \t\tgroupid smallint(5) unsigned NOT NULL default '0',\n  \t\tblog_id bigint(20) unsigned NOT NULL default '0',\n  \t\tname varchar(50)  NOT NULL default '' ,\n  \t\tdescription text  NOT NULL default '',\n  \t\tgroup_type varchar(50)  NOT NULL default '' ,\n\t\trole varchar(20)  NOT NULL default '' ,\n\t\tlogin_all smallint(5) unsigned NOT NULL default '0' ,\n  \t\tKEY groupid (groupid)\n\t\t){$charset_collate};";
     dbDelta($views_queries);
     $ret[] = "{$group_role} table of XPressME was made.<br />";
     $notify_reserve = XOOPS_DB_PREFIX . '_' . $xp_prefix . '_notify_reserve';
     $queries = "CREATE TABLE {$notify_reserve} (\n  \t\tnotify_reserve_id bigint(20) NOT NULL AUTO_INCREMENT ,\n  \t\tnotify_reserve_status varchar(20)  NOT NULL default '' ,\n  \t\tcategory text  NOT NULL default '',\n  \t\titem_id bigint(20) unsigned NOT NULL default '0',\n\t\tevent varchar(20) NOT NULL default '',\n\t\textra_tags_arry longtext NOT NULL default '' ,\n\t\tuser_list_arry longtext NOT NULL default '' ,\n  \t\tmodule_id smallint(5) unsigned NOT NULL default '0' ,\n  \t\tomit_user_id varchar(20) NOT NULL default '' ,\n  \t\tKEY notify_reserve_id (notify_reserve_id)\n\t\t)ENGINE=MyISAM";
     dbDelta($queries);
     $ret[] = "{$notify_reserve} table of XPressME was made.<br />";
     $sql = "INSERT INTO {$group_role} (groupid, role) VALUES (1, 'administrator')";
     $wpdb->query($sql);
     // make templates
     include_once XOOPS_ROOT_PATH . '/modules/' . $mydirname . '/include/xpress_templates_make.php';
     $t_mess = xpress_templates_make($mid, $mydirname);
     // Admin User Data write
     // Change uid field
     $wpdb->query("ALTER TABLE {$wpdb->posts} CHANGE `post_author` `post_author` mediumint(8) NOT NULL DEFAULT '0'");
     $user_name = is_object($GLOBALS["xoopsUser"]) ? $GLOBALS["xoopsUser"]->getVar("uname") : 'admin';
     $email = is_object($GLOBALS["xoopsUser"]) ? $GLOBALS["xoopsUser"]->getVar("email") : '*****@*****.**';
     $pass_md5 = is_object($GLOBALS["xoopsUser"]) ? $GLOBALS["xoopsUser"]->getVar("pass") : '';
     add_filter('sanitize_user', "sanitize_user_multibyte", 10, 3);
     if (!function_exists('username_exists')) {
         require_once $mydirpath . '/wp-includes/registration-functions.php';
     }
     $user_id = username_exists($user_name);
     if (!$user_id) {
         $random_password = '******';
         $user_id = wp_create_user($user_name, $random_password, $email);
     } else {
         $random_password = __('User already exists.  Password inherited.');
     }
     $user = new WP_User($user_id);
     $user->set_role('administrator');
     'User ' . $user_name . ' of the administrator was made.';
     // over write xoops md5 password
     $sql = "UPDATE {$wpdb->users} SET user_pass ='******' WHERE ID = {$user_id}";
     $wpdb->query($sql);
     $ret[] = 'The password of XOOPS was copied.<br />';
     // Set Default data
     // make WordPress Default data
     if (function_exists('wp_install_defaults')) {
         wp_install_defaults($user_id);
     } else {
         wp_install_old_defaults($user_id);
     }
     $ret[] = 'The first sample post & comment was written.<br />';
     // Rewrite Option for Xpress
     $xoops_config_tbl = XOOPS_DB_PREFIX . '_config';
     $sql = "SELECT conf_value FROM  {$xoops_config_tbl} WHERE `conf_name` = 'default_TZ'";
     $xoops_default_TZ = $wpdb->get_var($sql);
     update_option('gmt_offset', $xoops_default_TZ);
     if (WPLANG == 'ja_EUC') {
         $setup_charset = 'EUC-JP';
     } elseif (WPLANG == 'ja_SJIS') {
         $setup_charset = 'Shift_JIS';
     } else {
         $setup_charset = 'UTF-8';
     }
     update_option("blog_charset", $setup_charset);
     update_option('blogname', $site_name);
     update_option('blogdescription', 'WordPress for XOOPS');
     update_option("admin_email", $GLOBALS["xoopsConfig"]['adminmail']);
     update_option("ping_sites", "http://rpc.pingomatic.com/\nhttp://ping.xoopsforge.com/");
     update_option("home", $site_url);
     update_option("siteurl", $site_url);
     update_option("what_to_show", "posts");
     update_option('default_pingback_flag', 0);
     $ret[] = 'The initial data was written in the data base of wordpress.<br />';
     update_option("template", "xpress_default");
     update_option("stylesheet", "xpress_default");
     $ret[] = 'The default theme of wordpress was set to xpress_default.<br />';
     //	update_option('uploads_use_yearmonth_folders', 1);
     update_option('upload_path', 'wp-content/uploads');
     // activate the xpressme plugin
     require_once dirname(__FILE__) . '/xpress_active_plugin.php';
     if (xpress_pulugin_activation('xpressme/xpressme.php')) {
         $ret[] = 'The xpressme plug-in was activated.<br />';
     } else {
         $GLOBALS["err_log"][] = '<span style="color:#ff0000;">failed in the activation of xpressme plug-in.</span><br />';
         return false;
     }
     $ret = array_merge($ret, $t_mess);
     return true;
 }
Example #7
0
 /**
  * Run WordPress Upgrade functions.
  *
  * {@internal Missing Long Description}}
  *
  * @since unknown
  *
  * @return null
  */
 function wp_upgrade()
 {
     global $wp_current_db_version, $wp_db_version;
     $wp_current_db_version = __get_option('db_version');
     // We are up-to-date.  Nothing to do.
     if ($wp_db_version == $wp_current_db_version) {
         return;
     }
     if (!is_blog_installed()) {
         return;
     }
     wp_check_mysql_version();
     wp_cache_flush();
     pre_schema_upgrade();
     make_db_current_silent();
     upgrade_all();
     wp_cache_flush();
 }
<?php
switch($step) {

	case 0:
	$goback = attribute_escape(stripslashes(wp_get_referer()));
?> 
<p><?php _e('This file upgrades you from any previous version of WordPress to the latest. It may take a while though, so be patient.'); ?></p> 
	<h2 class="step"><a href="upgrade.php?step=1&amp;backto=<?php echo $goback; ?>"><?php _e('Upgrade WordPress &raquo;'); ?></a></h2>
<?php
	break;
	
	case 1:
	$wp_current_db_version = __get_option('db_version');
	if ( $wp_db_version != $wp_current_db_version ) {
		wp_cache_flush();
		make_db_current_silent();
		upgrade_all();
		wp_cache_flush();
	}

	if ( empty( $_GET['backto'] ) )
		$backto = __get_option('home');
	else
		$backto = attribute_escape(stripslashes($_GET['backto']));
?> 
<h2><?php _e('Step 1'); ?></h2> 
	<p><?php printf(__("There's actually only one step. So if you see this, you're done. <a href='%s'>Have fun</a>!"),  $backto); ?></p>

<!--
<pre>
<?php printf(__('%s queries'), $wpdb->num_queries); ?>
Example #9
0
/**
 * Install an empty blog.
 *
 * Creates the new blog tables and options. If calling this function
 * directly, be sure to use switch_to_blog() first, so that $wpdb
 * points to the new blog.
 *
 * @since MU
 *
 * @global wpdb     $wpdb
 * @global WP_Roles $wp_roles
 *
 * @param int    $blog_id    The value returned by insert_blog().
 * @param string $blog_title The title of the new site.
 */
function install_blog($blog_id, $blog_title = '')
{
    global $wpdb, $wp_roles, $current_site;
    // Cast for security
    $blog_id = (int) $blog_id;
    require_once ABSPATH . 'wp-admin/includes/upgrade.php';
    $suppress = $wpdb->suppress_errors();
    if ($wpdb->get_results("DESCRIBE {$wpdb->posts}")) {
        die('<h1>' . __('Already Installed') . '</h1><p>' . __('You appear to have already installed WordPress. To reinstall please clear your old database tables first.') . '</p></body></html>');
    }
    $wpdb->suppress_errors($suppress);
    $url = get_blogaddress_by_id($blog_id);
    // Set everything up
    make_db_current_silent('blog');
    populate_options();
    populate_roles();
    // populate_roles() clears previous role definitions so we start over.
    $wp_roles = new WP_Roles();
    $siteurl = $home = untrailingslashit($url);
    if (!is_subdomain_install()) {
        if ('https' === parse_url(get_network_option('siteurl'), PHP_URL_SCHEME)) {
            $siteurl = set_url_scheme($siteurl, 'https');
        }
        if ('https' === parse_url(get_home_url($current_site->blog_id), PHP_URL_SCHEME)) {
            $home = set_url_scheme($home, 'https');
        }
    }
    update_option('siteurl', $siteurl);
    update_option('home', $home);
    if (get_site_option('ms_files_rewriting')) {
        update_option('upload_path', UPLOADBLOGSDIR . "/{$blog_id}/files");
    } else {
        update_option('upload_path', get_blog_option(get_current_site()->blog_id, 'upload_path'));
    }
    update_option('blogname', wp_unslash($blog_title));
    update_option('admin_email', '');
    // remove all perms
    $table_prefix = $wpdb->get_blog_prefix();
    delete_metadata('user', 0, $table_prefix . 'user_level', null, true);
    // delete all
    delete_metadata('user', 0, $table_prefix . 'capabilities', null, true);
    // delete all
}
function install_blog($blog_id, $blog_title = '')
{
    global $wpdb, $table_prefix, $wp_roles;
    $wpdb->suppress_errors();
    // Cast for security
    $blog_id = (int) $blog_id;
    require_once ABSPATH . 'wp-admin/includes/upgrade.php';
    if ($wpdb->get_results("SELECT ID FROM {$wpdb->posts}")) {
        die(__('<h1>Already Installed</h1><p>You appear to have already installed WordPress. To reinstall please clear your old database tables first.</p>') . '</body></html>');
    }
    $wpdb->suppress_errors(false);
    $url = get_blogaddress_by_id($blog_id);
    // Set everything up
    make_db_current_silent();
    populate_options();
    populate_roles();
    $wp_roles->_init();
    // fix url.
    update_option('siteurl', $url);
    update_option('home', $url);
    update_option('fileupload_url', $url . "files");
    update_option('upload_path', "wp-content/blogs.dir/" . $blog_id . "/files");
    update_option('blogname', $blog_title);
    update_option('admin_email', '');
    $wpdb->update($wpdb->options, array('option_value' => ''), array('option_name' => 'admin_email'));
    // Default category
    $wpdb->insert($wpdb->terms, array('term_id' => 1, 'name' => __('Uncategorized'), 'slug' => sanitize_title(__('Uncategorized')), 'term_group' => 0));
    $wpdb->insert($wpdb->term_taxonomy, array('term_id' => 1, 'taxonomy' => 'category', 'description' => '', 'parent' => 0, 'count' => 1));
    // Default link category
    $cat_name = __('Blogroll');
    $cat_slug = sanitize_title($cat_name);
    $blogroll_id = $wpdb->get_var($wpdb->prepare("SELECT cat_ID FROM {$wpdb->sitecategories} WHERE category_nicename = %s", $cat_slug));
    if ($blogroll_id == null) {
        $wpdb->insert($wpdb->sitecategories, array('cat_ID' => 0, 'cat_name' => $cat_name, 'category_nicename' => $cat_slug, 'last_updated' => current_time('mysql', true)));
        $blogroll_id = $wpdb->insert_id;
    }
    $wpdb->insert($wpdb->terms, array('term_id' => $blogroll_id, 'name' => $cat_name, 'slug' => $cat_slug, 'term_group' => 0));
    $wpdb->insert($wpdb->term_taxonomy, array('term_id' => $blogroll_id, 'taxonomy' => 'link_category', 'description' => '', 'parent' => 0, 'count' => 2));
    update_option('default_link_category', $blogroll_id);
    // remove all perms
    $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->usermeta} WHERE meta_key = %s", $table_prefix . 'user_level'));
    $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->usermeta} WHERE meta_key = %s", $table_prefix . 'capabilities'));
    $wpdb->suppress_errors(false);
}
Example #11
0
/**
 * Install an empty blog.
 *
 * Creates the new blog tables and options. If calling this function
 * directly, be sure to use switch_to_blog() first, so that $wpdb
 * points to the new blog.
 *
 * @since MU
 * @uses make_db_current_silent()
 * @uses populate_roles()
 *
 * @param int $blog_id The value returned by insert_blog().
 * @param string $blog_title The title of the new site.
 */
function install_blog($blog_id, $blog_title = '')
{
    global $wpdb, $wp_roles, $current_site;
    // Cast for security
    $blog_id = (int) $blog_id;
    require_once ABSPATH . 'wp-admin/includes/upgrade.php';
    $wpdb->suppress_errors();
    if ($wpdb->get_results("DESCRIBE {$wpdb->posts}")) {
        die('<h1>' . __('Already Installed') . '</h1><p>' . __('You appear to have already installed WordPress. To reinstall please clear your old database tables first.') . '</p></body></html>');
    }
    $wpdb->suppress_errors(false);
    $url = get_blogaddress_by_id($blog_id);
    // Set everything up
    make_db_current_silent('blog');
    populate_options();
    populate_roles();
    $wp_roles->_init();
    $url = untrailingslashit($url);
    update_option('siteurl', $url);
    update_option('home', $url);
    if (get_site_option('ms_files_rewriting')) {
        update_option('upload_path', UPLOADBLOGSDIR . "/{$blog_id}/files");
    } else {
        update_option('upload_path', get_blog_option($current_site->blog_id, 'upload_path'));
    }
    update_option('blogname', stripslashes($blog_title));
    update_option('admin_email', '');
    // remove all perms
    $table_prefix = $wpdb->get_blog_prefix();
    delete_metadata('user', 0, $table_prefix . 'user_level', null, true);
    // delete all
    delete_metadata('user', 0, $table_prefix . 'capabilities', null, true);
    // delete all
}
Example #12
0
function install_blog($blog_id, $blog_title = '')
{
    global $wpdb, $table_prefix, $wp_roles;
    require_once ABSPATH . 'wp-admin/includes/upgrade.php';
    $wpdb->suppress_errors();
    $installed = $wpdb->get_results("SELECT * FROM {$wpdb->posts}");
    $wpdb->suppress_errors(false);
    if ($installed) {
        die(__('<h1>Already Installed</h1><p>You appear to have already installed WordPress. To reinstall please clear your old database tables first.</p>') . '</body></html>');
    }
    $url = get_blogaddress_by_id($blog_id);
    // Set everything up
    make_db_current_silent();
    populate_options();
    populate_roles();
    $wp_roles->_init();
    // fix url.
    update_option('siteurl', $url);
    update_option('home', $url);
    update_option('fileupload_url', $url . "files");
    update_option('upload_path', "wp-content/blogs.dir/" . $blog_id . "/files");
    update_option('blogname', $blog_title);
    update_option('admin_email', '');
    $wpdb->query("UPDATE {$wpdb->options} SET option_value = '' WHERE option_name = 'admin_email'");
    // Default category
    $cat_name = $wpdb->escape(__('Uncategorized'));
    $cat_slug = sanitize_title(__('Uncategorized'));
    $wpdb->query("INSERT INTO {$wpdb->terms} (term_id, name, slug, term_group) VALUES ('1', '{$cat_name}', '{$cat_slug}', '0')");
    $wpdb->query("INSERT INTO {$wpdb->term_taxonomy} (term_id, taxonomy, description, parent, count) VALUES ('1', 'category', '', '0', '1')");
    // Default link category
    $cat_name = $wpdb->escape(__('Blogroll'));
    $cat_slug = sanitize_title(__('Blogroll'));
    $blogroll_id = $wpdb->get_var("SELECT cat_ID FROM {$wpdb->sitecategories} WHERE category_nicename = '{$cat_slug}'");
    if ($blogroll_id == null) {
        $wpdb->query("INSERT INTO " . $wpdb->sitecategories . " (cat_ID, cat_name, category_nicename, last_updated) VALUES (0, '{$cat_name}', '{$cat_slug}', NOW())");
        $blogroll_id = $wpdb->insert_id;
    }
    $wpdb->query("INSERT INTO {$wpdb->terms} (term_id, name, slug, term_group) VALUES ('{$blogroll_id}', '{$cat_name}', '{$cat_slug}', '0')");
    $wpdb->query("INSERT INTO {$wpdb->term_taxonomy} (term_id, taxonomy, description, parent, count) VALUES ('{$blogroll_id}', 'link_category', '', '0', '2')");
    update_option('default_link_category', $blogroll_id);
    // remove all perms
    $wpdb->query("DELETE FROM " . $wpdb->usermeta . " WHERE meta_key = '" . $table_prefix . "user_level'");
    $wpdb->query("DELETE FROM " . $wpdb->usermeta . " WHERE meta_key = '" . $table_prefix . "capabilities'");
    wp_cache_delete('notoptions', 'options');
    wp_cache_delete('alloptions', 'options');
    $wpdb->suppress_errors(false);
}
function wp_upgrade() {
	global $wp_current_db_version, $wp_db_version;

	$wp_current_db_version = __get_option('db_version');

	// We are up-to-date.  Nothing to do.
	if ( $wp_db_version == $wp_current_db_version )
		return;

	wp_check_mysql_version();
	wp_cache_flush();
	make_db_current_silent();
	upgrade_all();
	wp_cache_flush();
}
Example #14
0
/**
 * Runs WordPress Upgrade functions.
 *
 * Upgrades the database if needed during a site update.
 *
 * @since 2.1.0
 *
 * @global int  $wp_current_db_version
 * @global int  $wp_db_version
 * @global wpdb $wpdb
 */
function wp_upgrade() {
	global $wp_current_db_version, $wp_db_version, $wpdb;

	$wp_current_db_version = __get_option('db_version');

	// We are up-to-date. Nothing to do.
	if ( $wp_db_version == $wp_current_db_version )
		return;

	if ( ! is_blog_installed() )
		return;

	wp_check_mysql_version();
	wp_cache_flush();
	pre_schema_upgrade();
	make_db_current_silent();
	upgrade_all();
	if ( is_multisite() && is_main_site() )
		upgrade_network();
	wp_cache_flush();

	if ( is_multisite() ) {
		if ( $wpdb->get_row( "SELECT blog_id FROM {$wpdb->blog_versions} WHERE blog_id = '{$wpdb->blogid}'" ) )
			$wpdb->query( "UPDATE {$wpdb->blog_versions} SET db_version = '{$wp_db_version}' WHERE blog_id = '{$wpdb->blogid}'" );
		else
			$wpdb->query( "INSERT INTO {$wpdb->blog_versions} ( `blog_id` , `db_version` , `last_updated` ) VALUES ( '{$wpdb->blogid}', '{$wp_db_version}', NOW());" );
	}

	/**
	 * Fires after a site is fully upgraded.
	 *
	 * @since 3.9.0
	 *
	 * @param int $wp_db_version         The new $wp_db_version.
	 * @param int $wp_current_db_version The old (current) $wp_db_version.
	 */
	do_action( 'wp_upgrade', $wp_db_version, $wp_current_db_version );
}
Example #15
0
 /**
  * Runs WordPress Upgrade functions.
  *
  * Upgrades the database if needed during a site update.
  *
  * @since 2.1.0
  *
  * @global int  $wp_current_db_version
  * @global int  $wp_db_version
  * @global wpdb $wpdb WordPress database abstraction object.
  */
 function wp_upgrade()
 {
     global $wp_current_db_version, $wp_db_version, $wpdb;
     $wp_current_db_version = __get_option('db_version');
     // We are up-to-date. Nothing to do.
     if ($wp_db_version == $wp_current_db_version) {
         return;
     }
     if (!is_blog_installed()) {
         return;
     }
     wp_check_mysql_version();
     wp_cache_flush();
     pre_schema_upgrade();
     make_db_current_silent();
     upgrade_all();
     wp_cache_flush();
     /**
      * Fires after a site is fully upgraded.
      *
      * @since 3.9.0
      *
      * @param int $wp_db_version         The new $wp_db_version.
      * @param int $wp_current_db_version The old (current) $wp_db_version.
      */
     do_action('wp_upgrade', $wp_db_version, $wp_current_db_version);
 }