Changeset 1601
- Timestamp:
- 09/05/2004 01:22:17 AM (20 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/install.php
r1597 r1601 5 5 6 6 require_once('../wp-config.php'); 7 require(' upgrade-functions.php');7 require('./upgrade-functions.php'); 8 8 9 9 $guessurl = str_replace('/wp-admin/install.php?step=2', '', 'http://' . $HTTP_HOST . $REQUEST_URI); … … 69 69 <h1 id="logo"><img alt="WordPress" src="http://static.wordpress.org/logo.png" /></h1> 70 70 <?php 71 72 71 // Let's check to make sure WP isn't already installed. 73 72 $wpdb->hide_errors(); … … 90 89 <p>Before we begin we need a little bit of information. Don't worry, you can always change these later. </p> 91 90 92 <form name=" form1" id="form1" method="post" action="install.php?step=2">91 <form name="setup" id="setup" method="post" action="install.php?step=2"> 93 92 <table width="100%"> 94 93 <tr> … … 110 109 break; 111 110 case 2: 112 $weblog_title = addslashes(stripslashes(stripslashes($_POST['weblog_title'])));113 $admin_email = addslashes(stripslashes(stripslashes($_POST['admin_email'])));114 111 ?> 115 112 <h1>Second Step</h1> 116 113 <p>Now we’re going to create the database tables and fill them with some default data.</p> 117 114 118 <?php119 120 $got_links = false;121 $got_cats = false;122 $got_row = false;123 ?>124 <?php125 $result = mysql_list_tables(DB_NAME);126 if (!$result) {127 print "DB Error, could not list tables\n";128 print 'MySQL Error: ' . mysql_error();129 exit;130 }131 132 while ($row = mysql_fetch_row($result)) {133 if ($row[0] == $wpdb->links)134 $got_links = true;135 if ($row[0] == $wpdb->linkcategories)136 $got_cats = true;137 //print "Table: $row[0]<br />\n";138 }139 if (!$got_cats) {140 $sql = "CREATE TABLE $wpdb->linkcategories ( " .141 " cat_id int(11) NOT NULL auto_increment, " .142 " cat_name tinytext NOT NULL, ".143 " auto_toggle enum ('Y','N') NOT NULL default 'N', ".144 " show_images enum ('Y','N') NOT NULL default 'Y', " .145 " show_description enum ('Y','N') NOT NULL default 'Y', " .146 " show_rating enum ('Y','N') NOT NULL default 'Y', " .147 " show_updated enum ('Y','N') NOT NULL default 'Y', " .148 " sort_order varchar(64) NOT NULL default 'name', " .149 " sort_desc enum('Y','N') NOT NULL default 'N', " .150 " text_before_link varchar(128) not null default '<li>', " .151 " text_after_link varchar(128) not null default '<br />'," .152 " text_after_all varchar(128) not null default '</li>', " .153 " list_limit int not null default '-1', " .154 " PRIMARY KEY (cat_id) ".155 ") ";156 $result = mysql_query($sql) or print ("Can't create the table '$wpdb->linkcategories' in the database.<br />" . $sql . "<br />" . mysql_error());157 if ($result != false) {158 $got_cats = true;159 }160 } else {161 $got_cats = true;162 }163 if (!$got_links) {164 $sql = "CREATE TABLE $wpdb->links ( " .165 " link_id int(11) NOT NULL auto_increment, " .166 " link_url varchar(255) NOT NULL default '', " .167 " link_name varchar(255) NOT NULL default '', " .168 " link_image varchar(255) NOT NULL default '', " .169 " link_target varchar(25) NOT NULL default '', " .170 " link_category int(11) NOT NULL default 0, " .171 " link_description varchar(255) NOT NULL default '', " .172 " link_visible enum ('Y','N') NOT NULL default 'Y', " .173 " link_owner int NOT NULL DEFAULT '1', " .174 " link_rating int NOT NULL DEFAULT '0', " .175 " link_updated DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', " .176 " link_rel varchar(255) NOT NULL default '', " .177 " link_notes MEDIUMTEXT NOT NULL default '', " .178 " PRIMARY KEY (link_id) " .179 ") ";180 $result = mysql_query($sql) or print ("Can't create the table '$wpdb->links' in the database.<br />" . $sql . "<br />" . mysql_error());181 $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://wordpress.org/', 'WordPress', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '', '');");182 $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://photomatt.net/', 'Matt', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '', '');");183 $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://zed1.com/journalized/', 'Mike', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '', '');");184 $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://www.alexking.org/', 'Alex', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '', '');");185 $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://dougal.gunters.org/', 'Dougal', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '', '');");186 187 188 if ($result != false) {189 $got_links = true;190 }191 } else {192 $got_links = true;193 }194 195 if ($got_links && $got_cats) {196 $sql = "SELECT * FROM $wpdb->linkcategories WHERE cat_id=1 ";197 $result = mysql_query($sql) or print ("Can't query '$wpdb->linkcategories'.<br />" . $sql . "<br />" . mysql_error());198 if ($result != false) {199 if ($row = mysql_fetch_object($result)) {200 $got_row = true;201 } else {202 $sql = "INSERT INTO $wpdb->linkcategories (cat_id, cat_name) VALUES (1, 'Links')";203 $result = mysql_query($sql) or print ("Can't query insert category.<br />" . $sql . "<br />" . mysql_error());204 if ($result != false) {205 $got_row = true;206 }207 }208 }209 }210 211 ?>212 <?php213 # Note: if you want to start again with a clean b2 database,214 # just remove the // in this file215 216 // $query = "DROP TABLE IF EXISTS $wpdb->posts";217 // $q = mysql_query($query) or die ("doh, can't drop the table \"$wpdb->posts\" in the database.");218 219 $query = "CREATE TABLE $wpdb->posts (220 ID int(10) unsigned NOT NULL auto_increment,221 post_author int(4) NOT NULL default '0',222 post_date datetime NOT NULL default '0000-00-00 00:00:00',223 post_date_gmt datetime NOT NULL default '0000-00-00 00:00:00',224 post_content text NOT NULL,225 post_title text NOT NULL,226 post_category int(4) NOT NULL default '0',227 post_excerpt text NOT NULL,228 post_lat float,229 post_lon float,230 post_status enum('publish','draft','private') NOT NULL default 'publish',231 comment_status enum('open','closed') NOT NULL default 'open',232 ping_status enum('open','closed') NOT NULL default 'open',233 post_password varchar(20) NOT NULL default '',234 post_name varchar(200) NOT NULL default '',235 to_ping text NOT NULL,236 pinged text NOT NULL,237 post_modified datetime NOT NULL default '0000-00-00 00:00:00',238 post_modified_gmt datetime NOT NULL default '0000-00-00 00:00:00',239 post_content_filtered text NOT NULL,240 PRIMARY KEY (ID),241 KEY post_date (post_date),242 KEY post_date_gmt (post_date_gmt),243 KEY post_name (post_name),244 KEY post_status (post_status)245 )246 ";247 $q = $wpdb->query($query);248 ?>249 115 250 116 <?php 117 flush(); 118 119 // Set everything up 120 make_db_current_silent(); 121 populate_options(); 122 123 // Fill in the data we gathered 124 $weblog_title = addslashes(stripslashes(stripslashes($_POST['weblog_title']))); 125 $admin_email = addslashes(stripslashes(stripslashes($_POST['admin_email']))); 126 127 $wpdb->query("UPDATE $wpdb->options SET option_value = '$weblog_title' WHERE option_name = 'blogname'"); 128 $wpdb->query("UPDATE $wpdb->options SET option_value = '$admin_email' WHERE option_name = 'admin_email'"); 129 130 // Now drop in some default links 131 $wpdb->query("INSERT INTO $wpdb->linkcategories (cat_id, cat_name) VALUES (1, 'Blogroll')"); 132 $wpdb->query("INSERT INTO $wpdb->links (link_url, link_name, link_category) VALUES ('http://photomatt.net/', 'Matt', 1);"); 133 $wpdb->query("INSERT INTO $wpdb->links (link_url, link_name, link_category) VALUES ('http://zed1.com/journalized/', 'Mike', 1);"); 134 $wpdb->query("INSERT INTO $wpdb->links (link_url, link_name, link_category) VALUES ('http://www.alexking.org/', 'Alex', 1);"); 135 $wpdb->query("INSERT INTO $wpdb->links (link_url, link_name, link_category) VALUES ('http://dougal.gunters.org/', 'Dougal', 1);"); 136 137 // Default category 138 $wpdb->query("INSERT INTO $wpdb->categories (cat_ID, cat_name) VALUES ('0', 'Uncategorized')"); 139 140 // First post 251 141 $now = date('Y-m-d H:i:s'); 252 142 $now_gmt = gmdate('Y-m-d H:i:s'); 253 $ query = "INSERT INTO $wpdb->posts (post_author, post_date, post_date_gmt, post_content, post_title, post_modified, post_modified_gmt) VALUES ('1', '$now', '$now_gmt', 'Welcome to WordPress. This is the first post. Edit or delete it, then start blogging!', 'Hello world!', '$now', '$now_gmt')";143 $wpdb->query("INSERT INTO $wpdb->posts (post_author, post_date, post_date_gmt, post_content, post_title, post_modified, post_modified_gmt) VALUES ('1', '$now', '$now_gmt', 'Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!', 'Hello world!', '$now', '$now_gmt')"); 254 144 255 $q = $wpdb->query($query); 256 ?> 145 // Default comment 146 $wpdb->query("INSERT INTO $wpdb->comments (comment_post_ID, comment_author, comment_author_email, comment_author_url, comment_author_IP, comment_date, comment_date_gmt, comment_content) VALUES ('1', 'Mr WordPress', 'mr@wordpress.org', 'http://wordpress.org', '127.0.0.1', '$now', '$now_gmt', 'Hi, this is a comment.<br />To delete a comment, just log in, and view the posts\' comments, there you will have the option to edit or delete them.')"); 257 147 258 <?php 259 // $query = "DROP TABLE IF EXISTS $wpdb->categories"; 260 // $q = mysql_query($query) or mysql_doh("doh, can't drop the table \"$wpdb->categories\" in the database."); 261 262 $query = " 263 CREATE TABLE $wpdb->categories ( 264 cat_ID int(4) NOT NULL auto_increment, 265 cat_name varchar(55) NOT NULL default '', 266 PRIMARY KEY (cat_ID), 267 UNIQUE (cat_name) 268 ) 269 "; 270 $q = $wpdb->query($query); 271 272 $query = "INSERT INTO $wpdb->categories (cat_ID, cat_name) VALUES ('0', 'General')"; 273 $q = $wpdb->query($query); 274 275 $query = "UPDATE $wpdb->posts SET post_category = 1"; 276 $result = $wpdb->query($query); 277 ?> 278 279 <?php 280 // $query = "DROP TABLE IF EXISTS $wpdb->comments"; 281 // $q = mysql_query($query) or mysql_doh("doh, can't drop the table \"$wpdb->comments\" in the database."); 282 283 $query = " 284 CREATE TABLE $wpdb->comments ( 285 comment_ID int(11) unsigned NOT NULL auto_increment, 286 comment_post_ID int(11) NOT NULL default '0', 287 comment_author tinytext NOT NULL, 288 comment_author_email varchar(100) NOT NULL default '', 289 comment_author_url varchar(100) NOT NULL default '', 290 comment_author_IP varchar(100) NOT NULL default '', 291 comment_date datetime NOT NULL default '0000-00-00 00:00:00', 292 comment_date_gmt datetime NOT NULL default '0000-00-00 00:00:00', 293 comment_content text NOT NULL, 294 comment_karma int(11) NOT NULL default '0', 295 PRIMARY KEY (comment_ID) 296 ) 297 "; 298 $q = $wpdb->query($query); 299 300 $now = date('Y-m-d H:i:s'); 301 $now_gmt = gmdate('Y-m-d H:i:s'); 302 $query = "INSERT INTO $wpdb->comments (comment_post_ID, comment_author, comment_author_email, comment_author_url, comment_author_IP, comment_date, comment_date_gmt, comment_content) VALUES ('1', 'Mr WordPress', 'mr@wordpress.org', 'http://wordpress.org', '127.0.0.1', '$now', '$now_gmt', 'Hi, this is a comment.<br />To delete a comment, just log in, and view the posts\' comments, there you will have the option to edit or delete them.')"; 303 $q = $wpdb->query($query); 304 ?> 305 306 <?php 307 $query = " 308 CREATE TABLE $wpdb->postmeta ( 309 meta_id int(11) NOT NULL auto_increment, 310 post_id int(11) NOT NULL default 0, 311 meta_key varchar(255), 312 meta_value text, 313 PRIMARY KEY (meta_id), 314 INDEX (post_id), 315 INDEX (meta_key) 316 ) 317 "; 318 319 $q = $wpdb->query($query); 320 321 322 ?> 323 324 <?php 325 // $query = "DROP TABLE IF EXISTS $wpdb->options"; 326 // $q = mysql_query($query) or mysql_doh("doh, can't drop the table \"$wpdb->options\" in the database."); 327 328 $query = " 329 CREATE TABLE $wpdb->options ( 330 option_id int(11) NOT NULL auto_increment, 331 blog_id int(11) NOT NULL default 0, 332 option_name varchar(64) NOT NULL default '', 333 option_can_override enum ('Y','N') NOT NULL default 'Y', 334 option_type int(11) NOT NULL default 1, 335 option_value varchar(255) NOT NULL default '', 336 option_width int NOT NULL default 20, 337 option_height int NOT NULL default 8, 338 option_description tinytext NOT NULL default '', 339 option_admin_level int NOT NULL DEFAULT '1', 340 PRIMARY KEY (option_id, blog_id, option_name) 341 ) 342 "; 343 $q = $wpdb->query($query); 344 345 $option_data = array( 346 //base options from b2cofig 347 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(1,'siteurl', 3, '$guessurl', 'siteurl is your blog\'s URL: for example, \'http://example.com/wordpress\' (no trailing slash !)', 8, 30)", 348 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(2,'blogfilename', 3, 'index.php', 'blogfilename is the name of the default file for your blog', 8, 20)", 349 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(3,'blogname', 3, '$weblog_title', 'blogname is the name of your blog', 8, 20)", 350 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(4,'blogdescription', 3, 'My WordPress weblog', 'blogdescription is the description of your blog', 8, 40)", 351 //"INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(6,'search_engine_friendly_urls', 2, '0', 'Querystring Configuration ** (don\'t change if you don\'t know what you\'re doing)', 8, 20)", 352 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(7,'new_users_can_blog', 2, '0', 'whether you want new users to be able to post entries once they have registered', 8, 20)", 353 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(8,'users_can_register', 2, '1', 'whether you want to allow users to register on your blog', 8, 20)", 354 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(54,'admin_email', 3, '$admin_email', 'Your email (obvious eh?)', 8, 20)", 355 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level) VALUES (93, 'blog_charset', 3, 'utf-8', 'Your blog’s charset (here’s a <a href=\'http://developer.apple.com/documentation/macos8/TextIntlSvcs/TextEncodingConversionManager/TEC1.5/TEC.b0.html\'>list of possible charsets</a>)', 8)", 356 // general blog setup 357 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(9 ,'start_of_week', 5, '1', 'day at the start of the week', 8, 20)", 358 //"INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(10,'use_preview', 2, '1', 'Do you want to use the \'preview\' function', 8, 20)", 359 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(14,'use_htmltrans', 2, '1', 'IMPORTANT! set this to false if you are using Chinese, Japanese, Korean, or other double-bytes languages', 8, 20)", 360 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(15,'use_balanceTags', 2, '1', 'this could help balance your HTML code. if it gives bad results, set it to false', 8, 20)", 361 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(16,'use_smilies', 2, '1', 'set this to 1 to enable smiley conversion in posts (note: this makes smiley conversion in ALL posts)', 8, 20)", 362 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(18,'require_name_email', 2, '0', 'set this to true to require e-mail and name, or false to allow comments without e-mail/name', 8, 20)", 363 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(20,'comments_notify', 2, '1', 'set this to true to let every author be notified about comments on their posts', 8, 20)", 364 //rss/rdf feeds 365 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(21,'posts_per_rss', 1, '10', 'number of last posts to syndicate', 8, 20)", 366 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(22,'rss_language', 3, 'en', 'the language of your blog ( see this: http://backend.userland.com/stories/storyReader$16 )', 8, 20)", 367 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(23,'rss_encoded_html', 2, '0', 'for b2rss.php: allow encoded HTML in <description> tag?', 8, 20)", 368 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(24,'rss_excerpt_length', 1, '50', 'length (in words) of excerpts in the RSS feed? 0=unlimited note: in b2rss.php, this will be set to 0 if you use encoded HTML', 8, 20)", 369 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(25,'rss_use_excerpt', 2, '0', 'use the excerpt field for rss feed.', 8, 20)", 370 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(29,'use_trackback', 2, '1', 'set this to 0 or 1, whether you want to allow your posts to be trackback\'able or not note: setting it to zero would also disable sending trackbacks', 8, 20)", 371 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(30,'use_pingback', 2, '1', 'set this to 0 or 1, whether you want to allow your posts to be pingback\'able or not note: setting it to zero would also disable sending pingbacks', 8, 20)", 372 //file upload 373 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(31,'use_fileupload', 2, '0', 'set this to false to disable file upload, or true to enable it', 8, 20)", 374 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(32,'fileupload_realpath', 3, '/home/your/site/wordpress/images', 'enter the real path of the directory where you\'ll upload the pictures \nif you\'re unsure about what your real path is, please ask your host\'s support staff \nnote that the directory must be writable by the webserver (chmod 766) \nnote for windows-servers users: use forwardslashes instead of backslashes', 8, 40)", 375 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(33,'fileupload_url', 3, 'http://example.com/images', 'enter the URL of that directory (it\'s used to generate the links to the uploded files)', 8, 40)", 376 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(34,'fileupload_allowedtypes', 3, 'jpg jpeg gif png', 'accepted file types, separated by spaces. example: \'jpg gif png\'', 8, 20)", 377 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(35,'fileupload_maxk', 1, '96', 'by default, most servers limit the size of uploads to 2048 KB, if you want to set it to a lower value, here it is (you cannot set a higher value than your server limit)', 8, 20)", 378 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(36,'fileupload_minlevel', 1, '4', 'you may not want all users to upload pictures/files, so you can set a minimum level for this', 8, 20)", 379 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(37,'fileupload_allowedusers', 3, '', '...or you may authorize only some users. enter their logins here, separated by spaces. if you leave this variable blank, all users who have the minimum level are authorized to upload. example: \'barbara anne george\'', 8, 30)", 380 // email settings 381 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(38,'mailserver_url', 3, 'mail.example.com', 'mailserver settings', 8, 20)", 382 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(39,'mailserver_login', 3, 'login@example.com', 'mailserver settings', 8, 20)", 383 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(40,'mailserver_pass', 3, 'password', 'mailserver settings', 8, 20)", 384 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(41,'mailserver_port', 1, '110', 'mailserver settings', 8, 20)", 385 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(42,'default_category', 1, '1', 'by default posts will have this category', 8, 20)", 386 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(46,'use_phoneemail', 2, '0', 'some mobile phone email services will send identical subject & content on the same line if you use such a service, set use_phoneemail to true, and indicate a separator string', 8, 20)", 387 // original options from options page 388 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(48,'posts_per_page', 1, '10','How many posts/days to show on the index page.', 4, 20)", 389 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(49,'what_to_show', 5, 'posts','Posts or days', 4, 20)", 390 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(50,'archive_mode', 5, 'monthly','Which \'unit\' to use for archives.', 4, 20)", 391 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(51,'time_difference', 6, '0', 'if you\'re not on the timezone of your server', 4, 20)", 392 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(52,'date_format', 3, 'n/j/Y', 'see note for format characters', 4, 20)", 393 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(53,'time_format', 3, 'g:i a', 'see note for format characters', 4, 20)", 394 395 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(55,'default_post_status', 5, 'publish', 'The default state of each new post', 8, 20)", 396 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(56,'default_comment_status', 5, 'open', 'The default state of comments for each new post', 8, 20)", 397 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(57,'default_ping_status', 5, 'open', 'The default ping state for each new post', 8, 20)", 398 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(58,'default_pingback_flag', 5, '1', 'Whether the \'PingBack the URLs in this post\' checkbox should be checked by default', 8, 20)", 399 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(59,'default_post_category', 7, '1', 'The default category for each new post', 8, 20)", 400 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(83,'default_post_edit_rows', 1, '9', 'The number of rows in the edit post form (min 3, max 100)', 8, 5)", 401 402 ); 403 404 foreach ($option_data as $query) { 405 $q = $wpdb->query($query); 406 } 407 ?> 408 409 410 411 <?php 412 $links_option_data = array( 413 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(60,'links_minadminlevel', 1, '5', 'The minimum admin level to edit links', 8, 10)", 414 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(61,'links_use_adminlevels', 2, '1', 'set this to false to have all links visible and editable to everyone in the link manager', 8, 20)", 415 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(62,'links_rating_type', 5, 'image', 'Set this to the type of rating indication you wish to use', 8, 10)", 416 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(63,'links_rating_char', 3, '*', 'If we are set to \'char\' which char to use.', 8, 5)", 417 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(64,'links_rating_ignore_zero', 2, '1', 'What do we do with a value of zero? set this to true to output nothing, 0 to output as normal (number/image)', 8, 20)", 418 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(65,'links_rating_single_image', 2, '1', 'Use the same image for each rating point? (Uses links_rating_image[0])', 8, 20)", 419 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(66,'links_rating_image0', 3, 'wp-links/links-images/tick.png', 'Image for rating 0 (and for single image)', 8, 40)", 420 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(67,'links_rating_image1', 3, 'wp-links/links-images/rating-1.gif', 'Image for rating 1', 8, 40)", 421 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(68,'links_rating_image2', 3, 'wp-links/links-images/rating-2.gif', 'Image for rating 2', 8, 40)", 422 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(69,'links_rating_image3', 3, 'wp-links/links-images/rating-3.gif', 'Image for rating 3', 8, 40)", 423 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(70,'links_rating_image4', 3, 'wp-links/links-images/rating-4.gif', 'Image for rating 4', 8, 40)", 424 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(71,'links_rating_image5', 3, 'wp-links/links-images/rating-5.gif', 'Image for rating 5', 8, 40)", 425 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(72,'links_rating_image6', 3, 'wp-links/links-images/rating-6.gif', 'Image for rating 6', 8, 40)", 426 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(73,'links_rating_image7', 3, 'wp-links/links-images/rating-7.gif', 'Image for rating 7', 8, 40)", 427 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(74,'links_rating_image8', 3, 'wp-links/links-images/rating-8.gif', 'Image for rating 8', 8, 40)", 428 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(75,'links_rating_image9', 3, 'wp-links/links-images/rating-9.gif', 'Image for rating 9', 8, 40)", 429 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(77,'weblogs_xml_url', 3, 'http://www.weblogs.com/changes.xml', 'Which file to grab from weblogs.com', 8, 40)", 430 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(78,'weblogs_cacheminutes', 1, '60', 'cache time in minutes (if it is older than this get a new copy)', 8, 10)", 431 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(79,'links_updated_date_format', 3, 'd/m/Y h:i', 'The date format for the updated tooltip', 8, 25)", 432 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(80,'links_recently_updated_prepend', 3, '>>', 'The text to prepend to a recently updated link', 8, 10)", 433 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(81,'links_recently_updated_append', 3, '<<', 'The text to append to a recently updated link', 8, 20)", 434 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(82,'links_recently_updated_time', 1, '120', 'The time in minutes to consider a link recently updated', 8, 20)", 435 ); 436 437 foreach ($links_option_data as $query) { 438 $q = $wpdb->query($query); 439 } 440 ?> 441 442 443 <?php 444 $geo_option_data = array( 445 // data for geo settings 446 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(84,'use_geo_positions', 2, '0', 'Turns on the geo url features of WordPress', 8, 20)", 447 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(85,'use_default_geourl', 2, '1','enables placement of default GeoURL ICBM location even when no other specified', 8, 20)", 448 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(86,'default_geourl_lat ', 8, 0.0, 'The default Latitude ICBM value - <a href=\"http://www.geourl.org/resources.html\" target=\"_blank\">see here</a>', 8, 20)", 449 "INSERT INTO $wpdb->options (option_id, option_name, option_type, option_value, option_description, option_admin_level, option_width) VALUES(87,'default_geourl_lon', 8, 0.0, 'The default Longitude ICBM value', 8, 20)", 450 ); 451 452 foreach ($geo_option_data as $query) { 453 $q = $wpdb->query($query); 454 } 455 ?> 456 457 <p>Groovy. We're almost done.</p> 458 459 <h1>Third Step</h1> 460 <?php 461 // $query = "DROP TABLE IF EXISTS $wpdb->users"; 462 // $q = mysql_query($query) or mysql_doh("doh, can't drop the table \"$wpdb->users\" in the database."); 463 464 $query = " 465 CREATE TABLE $wpdb->users ( 466 ID int(10) unsigned NOT NULL auto_increment, 467 user_login varchar(20) NOT NULL default '', 468 user_pass varchar(64) NOT NULL default '', 469 user_firstname varchar(50) NOT NULL default '', 470 user_lastname varchar(50) NOT NULL default '', 471 user_nickname varchar(50) NOT NULL default '', 472 user_icq int(10) unsigned NOT NULL default '0', 473 user_email varchar(100) NOT NULL default '', 474 user_url varchar(100) NOT NULL default '', 475 user_ip varchar(15) NOT NULL default '', 476 user_domain varchar(200) NOT NULL default '', 477 user_browser varchar(200) NOT NULL default '', 478 dateYMDhour datetime NOT NULL default '0000-00-00 00:00:00', 479 user_level int(2) unsigned NOT NULL default '0', 480 user_aim varchar(50) NOT NULL default '', 481 user_msn varchar(100) NOT NULL default '', 482 user_yim varchar(50) NOT NULL default '', 483 user_idmode varchar(20) NOT NULL default '', 484 PRIMARY KEY (ID), 485 UNIQUE KEY (user_login) 486 ) 487 "; 488 $q = $wpdb->query($query); 489 490 $random_password = substr(md5(uniqid(microtime())),0,6); 491 492 $query = "INSERT INTO $wpdb->users (ID, user_login, user_pass, user_nickname, user_email, user_level, user_idmode) VALUES ( '1', 'admin', MD5('$random_password'), 'Administrator', '$admin_email', '10', 'nickname')"; 493 $q = $wpdb->query($query); 494 495 // Do final updates 496 upgrade_all(); 148 // Set up admin user 149 $random_password = substr(md5(uniqid(microtime())), 0, 6); 150 $wpdb->query("INSERT INTO $wpdb->users (ID, user_login, user_pass, user_nickname, user_email, user_level, user_idmode) VALUES ( '1', 'admin', MD5('$random_password'), 'Administrator', '$admin_email', '10', 'nickname')"); 497 151 498 152 mail($admin_email, 'New WordPress Blog', "Your new WordPress blog has been sucessfully set up at: … … 510 164 http://wordpress.org/ 511 165 "); 166 167 upgrade_all(); 512 168 ?> 513 169 514 <p> User setup successful!</p>170 <p><em>Finished!</em></p> 515 171 516 172 <p>Now you can <a href="../wp-login.php">log in</a> with the <strong>login</strong> … … 525 181 <dt>Password</dt> 526 182 <dd><code><?php echo $random_password; ?></code></dd> 183 <dt>Login address</dt> 184 <dd><a href="../wp-login.php">wp-login.php</a></dd> 527 185 </dl> 528 <p>Were you expecting more steps? Sorry to disappoint. All done! </p>186 <p>Were you expecting more steps? Sorry to disappoint. All done! :)</p> 529 187 <?php 530 188 break; -
trunk/wp-admin/upgrade-functions.php
r1599 r1601 1 1 <?php 2 require_once('./upgrade-schema.php'); 2 3 // Functions to be called in install and upgrade scripts 3 4 // First let's set up the tables:5 6 $wp_queries="CREATE TABLE $wpdb->categories (7 cat_ID int(4) NOT NULL auto_increment,8 cat_name varchar(55) NOT NULL default '',9 category_nicename varchar(200) NOT NULL default '',10 category_description text NOT NULL,11 category_parent int(4) NOT NULL default '0',12 PRIMARY KEY (cat_ID),13 UNIQUE KEY cat_name (cat_name),14 KEY category_nicename (category_nicename)15 );16 CREATE TABLE $wpdb->comments (17 comment_ID int(11) unsigned NOT NULL auto_increment,18 comment_post_ID int(11) NOT NULL default '0',19 comment_author tinytext NOT NULL,20 comment_author_email varchar(100) NOT NULL default '',21 comment_author_url varchar(200) NOT NULL default '',22 comment_author_IP varchar(100) NOT NULL default '',23 comment_date datetime NOT NULL default '0000-00-00 00:00:00',24 comment_date_gmt datetime NOT NULL default '0000-00-00 00:00:00',25 comment_content text NOT NULL,26 comment_karma int(11) NOT NULL default '0',27 comment_approved enum('0','1') NOT NULL default '1',28 user_id int(11) NOT NULL default '0',29 PRIMARY KEY (comment_ID),30 KEY comment_approved (comment_approved),31 KEY comment_post_ID (comment_post_ID)32 );33 CREATE TABLE $wpdb->linkcategories (34 cat_id int(11) NOT NULL auto_increment,35 cat_name tinytext NOT NULL,36 auto_toggle enum('Y','N') NOT NULL default 'N',37 show_images enum('Y','N') NOT NULL default 'Y',38 show_description enum('Y','N') NOT NULL default 'N',39 show_rating enum('Y','N') NOT NULL default 'Y',40 show_updated enum('Y','N') NOT NULL default 'Y',41 sort_order varchar(64) NOT NULL default 'name',42 sort_desc enum('Y','N') NOT NULL default 'N',43 text_before_link varchar(128) NOT NULL default '<li>',44 text_after_link varchar(128) NOT NULL default '<br />',45 text_after_all varchar(128) NOT NULL default '</li>',46 list_limit int(11) NOT NULL default '-1',47 PRIMARY KEY (cat_id)48 );49 CREATE TABLE $wpdb->links (50 link_id int(11) NOT NULL auto_increment,51 link_url varchar(255) NOT NULL default '',52 link_name varchar(255) NOT NULL default '',53 link_image varchar(255) NOT NULL default '',54 link_target varchar(25) NOT NULL default '',55 link_category int(11) NOT NULL default '0',56 link_description varchar(255) NOT NULL default '',57 link_visible enum('Y','N') NOT NULL default 'Y',58 link_owner int(11) NOT NULL default '1',59 link_rating int(11) NOT NULL default '0',60 link_updated datetime NOT NULL default '0000-00-00 00:00:00',61 link_rel varchar(255) NOT NULL default '',62 link_notes mediumtext NOT NULL,63 link_rss varchar(255) NOT NULL default '',64 PRIMARY KEY (link_id),65 KEY link_category (link_category),66 KEY link_visible (link_visible)67 );68 CREATE TABLE $wpdb->options (69 option_id int(11) NOT NULL auto_increment,70 blog_id int(11) NOT NULL default '0',71 option_name varchar(64) NOT NULL default '',72 option_can_override enum('Y','N') NOT NULL default 'Y',73 option_type int(11) NOT NULL default '1',74 option_value text NOT NULL,75 option_width int(11) NOT NULL default '20',76 option_height int(11) NOT NULL default '8',77 option_description tinytext NOT NULL,78 option_admin_level int(11) NOT NULL default '1',79 autoload enum('yes','no') NOT NULL default 'yes',80 PRIMARY KEY (option_id,blog_id,option_name)81 );82 CREATE TABLE $wpdb->post2cat (83 rel_id int(11) NOT NULL auto_increment,84 post_id int(11) NOT NULL default '0',85 category_id int(11) NOT NULL default '0',86 PRIMARY KEY (rel_id),87 KEY post_id (post_id,category_id)88 );89 CREATE TABLE $wpdb->postmeta (90 meta_id int(11) NOT NULL auto_increment,91 post_id int(11) NOT NULL default '0',92 meta_key varchar(255) default NULL,93 meta_value text,94 PRIMARY KEY (meta_id),95 KEY post_id (post_id),96 KEY meta_key (meta_key)97 );98 CREATE TABLE $wpdb->posts (99 ID int(10) unsigned NOT NULL auto_increment,100 post_author int(4) NOT NULL default '0',101 post_date datetime NOT NULL default '0000-00-00 00:00:00',102 post_date_gmt datetime NOT NULL default '0000-00-00 00:00:00',103 post_content text NOT NULL,104 post_title text NOT NULL,105 post_category int(4) NOT NULL default '0',106 post_excerpt text NOT NULL,107 post_lat float default NULL,108 post_lon float default NULL,109 post_status enum('publish','draft','private','static') NOT NULL default 'publish',110 comment_status enum('open','closed','registered_only') NOT NULL default 'open',111 ping_status enum('open','closed') NOT NULL default 'open',112 post_password varchar(20) NOT NULL default '',113 post_name varchar(200) NOT NULL default '',114 to_ping text NOT NULL,115 pinged text NOT NULL,116 post_modified datetime NOT NULL default '0000-00-00 00:00:00',117 post_modified_gmt datetime NOT NULL default '0000-00-00 00:00:00',118 post_content_filtered text NOT NULL,119 post_parent int(11) NOT NULL default '0',120 PRIMARY KEY (ID),121 KEY post_date (post_date),122 KEY post_date_gmt (post_date_gmt),123 KEY post_name (post_name),124 KEY post_status (post_status)125 );126 CREATE TABLE $wpdb->users (127 ID int(10) unsigned NOT NULL auto_increment,128 user_login varchar(20) NOT NULL default '',129 user_pass varchar(64) NOT NULL default '',130 user_firstname varchar(50) NOT NULL default '',131 user_lastname varchar(50) NOT NULL default '',132 user_nickname varchar(50) NOT NULL default '',133 user_nicename varchar(50) NOT NULL default '',134 user_icq int(10) unsigned NOT NULL default '0',135 user_email varchar(100) NOT NULL default '',136 user_url varchar(100) NOT NULL default '',137 user_ip varchar(15) NOT NULL default '',138 user_domain varchar(200) NOT NULL default '',139 user_browser varchar(200) NOT NULL default '',140 dateYMDhour datetime NOT NULL default '0000-00-00 00:00:00',141 user_level int(2) unsigned NOT NULL default '0',142 user_aim varchar(50) NOT NULL default '',143 user_msn varchar(100) NOT NULL default '',144 user_yim varchar(50) NOT NULL default '',145 user_idmode varchar(20) NOT NULL default '',146 user_activation_key varchar(60) NOT NULL default '',147 user_status int(11) NOT NULL default '0',148 PRIMARY KEY (ID),149 UNIQUE KEY user_login (user_login)150 );";151 152 153 154 4 function upgrade_all() { 155 5 populate_options(); 156 upgrade_071();157 upgrade_072();158 6 upgrade_100(); 159 7 upgrade_101(); … … 162 10 } 163 11 164 function populate_options() {165 166 $guessurl = preg_replace('|/wp-admin/.*|i', '', 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);167 add_option('siteurl', $guessurl, 'WordPress web address');168 add_option('blogfilename', '', 'Default file for blog');169 add_option('blogname', 'My Weblog', 'Blog title');170 add_option('blogdescription', '', 'Short tagline');171 add_option('new_users_can_blog', 0);172 add_option('users_can_register', 1);173 add_option('admin_email', 'you@example.com');174 add_option('start_of_week', 1);175 add_option('use_balanceTags', 1);176 add_option('use_smilies', 1);177 add_option('require_name_email', 1);178 add_option('comments_notify', 1);179 add_option('posts_per_rss', 10);180 add_option('rss_excerpt_length', 50);181 add_option('rss_use_excerpt', 0);182 add_option('use_fileupload', 0);183 add_option('fileupload_realpath', ABSPATH . 'wp-content');184 add_option('fileupload_url', get_option('siteurl') . '/wp-content');185 add_option('fileupload_allowedtypes', 'jpg jpeg gif png');186 add_option('fileupload_maxk', 300);187 add_option('fileupload_minlevel', 6);188 add_option('mailserver_url', 'mail.example.com');189 add_option('mailserver_login', 'login@example.com');190 add_option('mailserver_pass', 'password');191 add_option('mailserver_port', 110);192 add_option('default_category', 1);193 add_option('default_comment_status', 'open');194 add_option('default_ping_status', 'open');195 add_option('default_pingback_flag', 1);196 add_option('default_post_edit_rows', 9);197 add_option('posts_per_page', 10);198 add_option('what_to_show', 'posts');199 add_option('date_format', 'F j, Y');200 add_option('time_format', 'g:i a');201 add_option('use_geo_positions', 0);202 add_option('use_default_geourl', 0);203 add_option('default_geourl_lat', 0);204 add_option('default_geourl_lon', 0);205 add_option('weblogs_xml_url', 'http://static.wordpress.org/changes.xml');206 add_option('links_updated_date_format', 'F j, Y g:i a');207 add_option('links_recently_updated_prepend', '<em>');208 add_option('links_recently_updated_append', '</em>');209 add_option('links_recently_updated_time', 120);210 add_option('comment_moderation', 0);211 add_option('moderation_notify', 1);212 add_option('permalink_structure');213 add_option('gzipcompression', 0);214 add_option('hack_file', 0);215 add_option('blog_charset', 'utf-8');216 add_option('moderation_keys');217 add_option('active_plugins');218 add_option('home');219 add_option('category_base');220 add_option('ping_sites', 'http://rpc.pingomatic.com/');221 add_option('advanced_edit', 0);222 add_option('comment_max_links', 2);223 224 // Delete unused options225 $unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'rss_language', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls');226 foreach ($unusedoptions as $option) :227 delete_option($option);228 endforeach;229 }230 231 function upgrade_071() {232 global $wpdb;233 maybe_add_column($wpdb->posts, 'post_status', "ALTER TABLE $wpdb->posts ADD `post_status` ENUM('publish','draft','private') NOT NULL");234 maybe_add_column($wpdb->posts, 'comment_status', "ALTER TABLE $wpdb->posts ADD `comment_status` ENUM('open','closed') NOT NULL");235 maybe_add_column($wpdb->posts, 'ping_status', "ALTER TABLE $wpdb->posts ADD `ping_status` ENUM('open','closed') NOT NULL");236 maybe_add_column($wpdb->posts, 'post_password', "ALTER TABLE $wpdb->posts ADD post_password varchar(20) NOT NULL");237 }238 239 function upgrade_072() {240 global $wpdb;241 maybe_add_column($wpdb->links, 'link_notes', "ALTER TABLE $wpdb->links ADD COLUMN link_notes MEDIUMTEXT NOT NULL DEFAULT '' ");242 maybe_add_column($wpdb->linkcategories, 'show_images', "ALTER TABLE $wpdb->linkcategories ADD COLUMN show_images enum('Y','N') NOT NULL default 'Y'");243 maybe_add_column($wpdb->linkcategories, 'show_description', "ALTER TABLE $wpdb->linkcategories ADD COLUMN show_description enum('Y','N') NOT NULL default 'Y'");244 maybe_add_column($wpdb->linkcategories, 'show_rating', "ALTER TABLE $wpdb->linkcategories ADD COLUMN show_rating enum('Y','N') NOT NULL default 'Y'");245 maybe_add_column($wpdb->linkcategories, 'show_updated', "ALTER TABLE $wpdb->linkcategories ADD COLUMN show_updated enum('Y','N') NOT NULL default 'Y'");246 maybe_add_column($wpdb->linkcategories, 'sort_order', "ALTER TABLE $wpdb->linkcategories ADD COLUMN sort_order varchar(64) NOT NULL default 'name'");247 maybe_add_column($wpdb->linkcategories, 'sort_desc', "ALTER TABLE $wpdb->linkcategories ADD COLUMN sort_desc enum('Y','N') NOT NULL default 'N'");248 maybe_add_column($wpdb->linkcategories, 'text_before_link', "ALTER TABLE $wpdb->linkcategories ADD COLUMN text_before_link varchar(128) not null default '<li>'");249 maybe_add_column($wpdb->linkcategories, 'text_after_link', "ALTER TABLE $wpdb->linkcategories ADD COLUMN text_after_link varchar(128) not null default '<br />'");250 maybe_add_column($wpdb->linkcategories, 'text_after_all', "ALTER TABLE $wpdb->linkcategories ADD COLUMN text_after_all varchar(128) not null default '</li>'");251 maybe_add_column($wpdb->linkcategories, 'list_limit', "ALTER TABLE $wpdb->linkcategories ADD COLUMN list_limit int not null default -1");252 maybe_add_column($wpdb->posts, 'post_lon', "ALTER TABLE $wpdb->posts ADD COLUMN post_lon float");253 maybe_add_column($wpdb->posts, 'post_lat', "ALTER TABLE $wpdb->posts ADD COLUMN post_lat float ");254 maybe_create_table($wpdb->options, "255 CREATE TABLE $wpdb->options (256 option_id int(11) NOT NULL auto_increment,257 blog_id int(11) NOT NULL default 0,258 option_name varchar(64) NOT NULL default '',259 option_can_override enum('Y','N') NOT NULL default 'Y',260 option_type int(11) NOT NULL default 1,261 option_value varchar(255) NOT NULL default '',262 option_width int NOT NULL default 20,263 option_height int NOT NULL default 8,264 option_description tinytext NOT NULL default '',265 option_admin_level int NOT NULL DEFAULT '1',266 PRIMARY KEY (option_id, blog_id, option_name)267 )268 ");269 }270 271 12 function upgrade_100() { 272 13 global $wpdb; 273 maybe_add_column($wpdb->posts, 'post_name', "ALTER TABLE `$wpdb->posts` ADD `post_name` VARCHAR(200) NOT NULL");274 maybe_add_column($wpdb->posts, 'to_ping', "ALTER TABLE $wpdb->posts ADD `to_ping` TEXT NOT NULL");275 maybe_add_column($wpdb->posts, 'pinged', "ALTER TABLE $wpdb->posts ADD `pinged` TEXT NOT NULL");276 maybe_add_column($wpdb->posts, 'post_modified', "ALTER TABLE $wpdb->posts ADD `post_modified` DATETIME NOT NULL");277 maybe_add_column($wpdb->posts, 'post_content_filtered', "ALTER TABLE $wpdb->posts ADD `post_content_filtered` TEXT NOT NULL");278 maybe_add_column($wpdb->categories, 'category_nicename', "ALTER TABLE `$wpdb->categories` ADD `category_nicename` VARCHAR(200) NOT NULL");279 maybe_add_column($wpdb->categories, 'category_description', "ALTER TABLE `$wpdb->categories` ADD `category_description` TEXT NOT NULL");280 maybe_add_column($wpdb->categories, 'category_parent', "ALTER TABLE `$wpdb->categories` ADD `category_parent` INT(4) NOT NULL");281 maybe_add_column($wpdb->links, 'link_rss', "ALTER TABLE `$wpdb->links` ADD `link_rss` VARCHAR( 255 ) NOT NULL;");282 maybe_add_column($wpdb->users, 'user_description', "ALTER TABLE `$wpdb->users` ADD `user_description` TEXT NOT NULL");283 maybe_add_column($wpdb->comments, 'comment_approved', "ALTER TABLE $wpdb->comments ADD COLUMN comment_approved ENUM('0', '1') DEFAULT '1' NOT NULL");284 285 // Create indicies286 add_clean_index($wpdb->posts, 'post_name');287 add_clean_index($wpdb->categories, 'category_nicename');288 add_clean_index($wpdb->comments, 'comment_approved');289 14 290 15 // Get the title and ID of every post, post_name to check if it already has a value … … 311 36 WHERE option_name LIKE 'links_rating_image%' 312 37 AND option_value LIKE 'wp-links/links-images/%'"); 313 314 // Multiple categories315 maybe_create_table($wpdb->post2cat, "316 CREATE TABLE `$wpdb->post2cat` (317 `rel_id` INT NOT NULL AUTO_INCREMENT ,318 `post_id` INT NOT NULL ,319 `category_id` INT NOT NULL ,320 PRIMARY KEY ( `rel_id` ) ,321 INDEX ( `post_id` , `category_id` )322 )323 ");324 38 325 39 $done_ids = $wpdb->get_results("SELECT DISTINCT post_id FROM $wpdb->post2cat"); … … 353 67 global $wpdb; 354 68 355 // Less intrusive default356 $wpdb->query("ALTER TABLE `$wpdb->linkcategories` CHANGE `show_description` `show_description` ENUM( 'Y', 'N' ) DEFAULT 'N' NOT NULL");357 358 69 // Clean up indices, add a few 359 70 add_clean_index($wpdb->posts, 'post_name'); … … 370 81 global $wpdb; 371 82 372 maybe_add_column($wpdb->comments, 'user_id', "ALTER TABLE `$wpdb->comments` ADD `user_id` INT DEFAULT '0' NOT NULL ;");373 maybe_add_column($wpdb->users, 'user_activation_key', "ALTER TABLE `$wpdb->users` ADD `user_activation_key` VARCHAR( 60 ) NOT NULL ;");374 maybe_add_column($wpdb->users, 'user_status', "ALTER TABLE `$wpdb->users` ADD `user_status` INT DEFAULT '0' NOT NULL ;");375 $wpdb->query("ALTER TABLE `$wpdb->posts` CHANGE `comment_status` `comment_status` ENUM( 'open', 'closed', 'registered_only' ) DEFAULT 'open' NOT NULL");376 377 maybe_add_column($wpdb->users, 'user_nicename', "ALTER TABLE `$wpdb->users` ADD `user_nicename` VARCHAR(50) DEFAULT '' NOT NULL ;");378 maybe_add_column($wpdb->posts, 'post_date_gmt', "ALTER TABLE $wpdb->posts ADD post_date_gmt DATETIME NOT NULL AFTER post_date");379 maybe_add_column($wpdb->posts, 'post_modified_gmt', "ALTER TABLE $wpdb->posts ADD post_modified_gmt DATETIME NOT NULL AFTER post_modified");380 maybe_add_column($wpdb->comments, 'comment_date_gmt', "ALTER TABLE $wpdb->comments ADD comment_date_gmt DATETIME NOT NULL AFTER comment_date");381 382 83 // Set user_nicename. 383 84 $users = $wpdb->get_results("SELECT ID, user_nickname, user_nicename FROM $wpdb->users"); … … 437 138 } 438 139 439 // post-meta440 maybe_create_table($wpdb->postmeta, "441 CREATE TABLE $wpdb->postmeta (442 meta_id int(11) NOT NULL auto_increment,443 post_id int(11) NOT NULL default 0,444 meta_key varchar(255),445 meta_value text,446 PRIMARY KEY (meta_id),447 INDEX (post_id),448 INDEX (meta_key)449 )450 ");451 452 140 // First we need to enlarge option_value so it can hold larger values: 453 141 $wpdb->query("ALTER TABLE `$wpdb->options` CHANGE `option_value` `option_value` TEXT NOT NULL"); 454 142 455 // Fix for CVS versions456 $wpdb->query("UPDATE $wpdb->options SET option_type = '5' WHERE option_name = 'advanced_edit'");457 458 // Forward-thinking459 $wpdb->query("ALTER TABLE `$wpdb->posts` CHANGE `post_status` `post_status` ENUM( 'publish', 'draft', 'private', 'static' ) DEFAULT 'publish' NOT NULL");460 maybe_add_column($wpdb->posts, 'post_parent', "ALTER TABLE `$wpdb->posts` ADD `post_parent` INT NOT NULL ;");461 462 463 143 $wpdb->query("ALTER TABLE `$wpdb->comments` CHANGE `comment_author_url` `comment_author_url` VARCHAR( 200 ) NOT NULL"); 464 144 } … … 466 146 function upgrade_130() { 467 147 global $wpdb, $table_prefix; 468 469 add_option('default_email_category', 1, 'Posts by email go to this category');470 add_option('recently_edited');471 add_option('use_linksupdate', 0);472 473 maybe_add_column($wpdb->options, 'autoload', "ALTER TABLE `$wpdb->options` ADD `autoload` ENUM( 'yes', 'no' ) NOT NULL ;");474 475 // Set up a few options not to load by default476 $fatoptions = array( 'moderation_keys', 'recently_edited' );477 foreach ($fatoptions as $fatoption) :478 $wpdb->query("UPDATE $wpdb->options SET `autoload` = 'no' WHERE option_name = '$fatoption'");479 endforeach;480 148 481 149 // Remove extraneous backslashes. … … 837 505 } 838 506 839 function rename_field($table, $field, $new) { 840 // ALTER TABLE `wp_users` CHANGE `ID` `user_id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT 841 } 842 843 function remove_field($table, $field) { 844 global $wpdb; 845 // ALTER TABLE `wp_users` DROP `user_domain` 507 function make_db_current_silent() { 508 global $wp_queries; 509 510 $alterations = dbDelta($wp_queries); 846 511 } 847 512 -
trunk/wp-admin/upgrade.php
r1575 r1601 12 12 <html xmlns="http://www.w3.org/1999/xhtml"> 13 13 <head> 14 <title>WordPress › Upgrade WordPress</title> 15 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 16 <style media="screen" type="text/css"> 14 <title>WordPress › Upgrade</title> 15 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 16 <style media="screen" type="text/css"> 17 <!-- 18 html { 19 background: #eee; 20 } 17 21 body { 18 background -color: white;19 color: black;22 background: #fff; 23 color: #000; 20 24 font-family: Georgia, "Times New Roman", Times, serif; 21 margin-left: 15%; 22 margin-right: 15%; 25 margin-left: 20%; 26 margin-right: 20%; 27 padding: .2em 2em; 28 } 29 30 h1 { 31 color: #006; 32 font-size: 18px; 33 font-weight: lighter; 34 } 35 36 h2 { 37 font-size: 16px; 38 } 39 40 p, li, dt { 41 line-height: 140%; 42 padding-bottom: 2px; 43 } 44 45 ul, ol { 46 padding: 5px 5px 5px 20px; 23 47 } 24 48 #logo { 25 margin: 0; 26 padding: 0; 27 background-image: url(http://wordpress.org/images/logo.png); 28 background-repeat: no-repeat; 29 height: 60px; 30 border-bottom: 4px solid #333; 49 margin-bottom: 2em; 31 50 } 32 #logo a { 33 display: block; 34 text-decoration: none; 35 text-indent: -100em; 36 height: 60px; 37 } 38 p { 39 line-height: 140%; 40 } 51 .step a, .step input { 52 font-size: 2em; 53 } 54 .step, th { 55 text-align: right; 56 } 57 #footer { 58 text-align: center; border-top: 1px solid #ccc; padding-top: 1em; font-style: italic; 59 } 60 --> 41 61 </style> 42 </head><body> 43 <h1 id="logo"><a href="http://wordpress.org">WordPress</a></h1> 62 </head> 63 <body> 64 <h1 id="logo"><img alt="WordPress" src="http://static.wordpress.org/logo.png" /></h1> 44 65 <?php 45 66 switch($step) { … … 47 68 case 0: 48 69 ?> 49 <p>This file upgrades you from any previous version of WordPress to the latest. It may take a while though, so be patient. 50 < p>If you’re all ready, <a href="upgrade.php?step=1">let's go</a>! </p>70 <p>This file upgrades you from any previous version of WordPress to the latest. It may take a while though, so be patient.</p> 71 <h2 class="step"><a href="upgrade.php?step=1">Upgrade WordPress »</a></h2> 51 72 <?php 52 73 break; 53 74 54 75 case 1: 76 make_db_current_silent(); 55 77 upgrade_all(); 56 78 ?> -
trunk/wp-includes/functions.php
r1599 r1601 365 365 $value = serialize($value); 366 366 367 if( !get_settings($name)) {367 if( !$wpdb->get_var("SELECT option_name FROM $wpdb->options WHERE option_name = '$name'") ) { 368 368 $name = $wpdb->escape($name); 369 369 $value = $wpdb->escape($value);
Note: See TracChangeset
for help on using the changeset viewer.