Make WordPress Core


Ignore:
Timestamp:
10/06/2011 12:21:24 AM (13 years ago)
Author:
ryan
Message:

Introduce wp_get_db_schema() for rerieving the various flavors of the WP db schema. Eliminates need to use global. Allows multiple calls to wpmu_create_blog(). see #12028

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/upgrade.php

    r18821 r18899  
    14251425 * @return unknown
    14261426 */
    1427 function dbDelta($queries, $execute = true) {
     1427function dbDelta( $queries = '', $execute = true ) {
    14281428    global $wpdb;
     1429
     1430    if ( in_array( $queries, array( '', 'all', 'blog', 'global', 'ms_global' ), true ) )
     1431        $queries = wp_get_db_schema( $queries );
    14291432
    14301433    // Separate individual queries into an array
     
    16321635 * @since 1.5.0
    16331636 */
    1634 function make_db_current() {
    1635     global $wp_queries;
    1636 
    1637     $alterations = dbDelta($wp_queries);
     1637function make_db_current( $tables = 'all' ) {
     1638    $alterations = dbDelta( $tables );
    16381639    echo "<ol>\n";
    16391640    foreach($alterations as $alteration) echo "<li>$alteration</li>\n";
     
    16481649 * @since 1.5.0
    16491650 */
    1650 function make_db_current_silent() {
    1651     global $wp_queries;
    1652 
    1653     $alterations = dbDelta($wp_queries);
     1651function make_db_current_silent(  $tables = 'all' ) {
     1652    $alterations = dbDelta( $tables );
    16541653}
    16551654
     
    19341933
    19351934/**
    1936  * Install Network.
    1937  *
    1938  * @since 3.0.0
    1939  *
    1940  */
    1941 if ( !function_exists( 'install_network' ) ) :
    1942 function install_network() {
    1943     global $wpdb, $charset_collate;
    1944     $ms_queries = "
    1945 CREATE TABLE $wpdb->users (
    1946   ID bigint(20) unsigned NOT NULL auto_increment,
    1947   user_login varchar(60) NOT NULL default '',
    1948   user_pass varchar(64) NOT NULL default '',
    1949   user_nicename varchar(50) NOT NULL default '',
    1950   user_email varchar(100) NOT NULL default '',
    1951   user_url varchar(100) NOT NULL default '',
    1952   user_registered datetime NOT NULL default '0000-00-00 00:00:00',
    1953   user_activation_key varchar(60) NOT NULL default '',
    1954   user_status int(11) NOT NULL default '0',
    1955   display_name varchar(250) NOT NULL default '',
    1956   spam tinyint(2) NOT NULL default '0',
    1957   deleted tinyint(2) NOT NULL default '0',
    1958   PRIMARY KEY  (ID),
    1959   KEY user_login_key (user_login),
    1960   KEY user_nicename (user_nicename)
    1961 ) $charset_collate;
    1962 CREATE TABLE $wpdb->blogs (
    1963   blog_id bigint(20) NOT NULL auto_increment,
    1964   site_id bigint(20) NOT NULL default '0',
    1965   domain varchar(200) NOT NULL default '',
    1966   path varchar(100) NOT NULL default '',
    1967   registered datetime NOT NULL default '0000-00-00 00:00:00',
    1968   last_updated datetime NOT NULL default '0000-00-00 00:00:00',
    1969   public tinyint(2) NOT NULL default '1',
    1970   archived enum('0','1') NOT NULL default '0',
    1971   mature tinyint(2) NOT NULL default '0',
    1972   spam tinyint(2) NOT NULL default '0',
    1973   deleted tinyint(2) NOT NULL default '0',
    1974   lang_id int(11) NOT NULL default '0',
    1975   PRIMARY KEY  (blog_id),
    1976   KEY domain (domain(50),path(5)),
    1977   KEY lang_id (lang_id)
    1978 ) $charset_collate;
    1979 CREATE TABLE $wpdb->blog_versions (
    1980   blog_id bigint(20) NOT NULL default '0',
    1981   db_version varchar(20) NOT NULL default '',
    1982   last_updated datetime NOT NULL default '0000-00-00 00:00:00',
    1983   PRIMARY KEY  (blog_id),
    1984   KEY db_version (db_version)
    1985 ) $charset_collate;
    1986 CREATE TABLE $wpdb->registration_log (
    1987   ID bigint(20) NOT NULL auto_increment,
    1988   email varchar(255) NOT NULL default '',
    1989   IP varchar(30) NOT NULL default '',
    1990   blog_id bigint(20) NOT NULL default '0',
    1991   date_registered datetime NOT NULL default '0000-00-00 00:00:00',
    1992   PRIMARY KEY  (ID),
    1993   KEY IP (IP)
    1994 ) $charset_collate;
    1995 CREATE TABLE $wpdb->site (
    1996   id bigint(20) NOT NULL auto_increment,
    1997   domain varchar(200) NOT NULL default '',
    1998   path varchar(100) NOT NULL default '',
    1999   PRIMARY KEY  (id),
    2000   KEY domain (domain,path)
    2001 ) $charset_collate;
    2002 CREATE TABLE $wpdb->sitemeta (
    2003   meta_id bigint(20) NOT NULL auto_increment,
    2004   site_id bigint(20) NOT NULL default '0',
    2005   meta_key varchar(255) default NULL,
    2006   meta_value longtext,
    2007   PRIMARY KEY  (meta_id),
    2008   KEY meta_key (meta_key),
    2009   KEY site_id (site_id)
    2010 ) $charset_collate;
    2011 CREATE TABLE $wpdb->signups (
    2012   domain varchar(200) NOT NULL default '',
    2013   path varchar(100) NOT NULL default '',
    2014   title longtext NOT NULL,
    2015   user_login varchar(60) NOT NULL default '',
    2016   user_email varchar(100) NOT NULL default '',
    2017   registered datetime NOT NULL default '0000-00-00 00:00:00',
    2018   activated datetime NOT NULL default '0000-00-00 00:00:00',
    2019   active tinyint(1) NOT NULL default '0',
    2020   activation_key varchar(50) NOT NULL default '',
    2021   meta longtext,
    2022   KEY activation_key (activation_key),
    2023   KEY domain (domain)
    2024 ) $charset_collate;
    2025 ";
    2026 // now create tables
    2027     dbDelta( $ms_queries );
    2028 }
    2029 endif;
    2030 
    2031 /**
    20321935 * Install global terms.
    20331936 *
Note: See TracChangeset for help on using the changeset viewer.