| <?php |
| if (!file_exists('../wp-config.php')) die("There doesn't seem to be a wp-config.php file. Double check that you updated wp-config-sample.php with the proper database connection information and renamed it to wp-config.php."); |
| require_once('../wp-config.php'); |
| require('upgrade-functions.php'); |
| $step = $_GET['step']; |
| if (!$step) $step = 0; |
| header( 'Content-Type: text/html; charset=utf-8' ); |
| ?> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <title>WordPress — b2 Conversion</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| <style media="screen" type="text/css"> |
| body { |
| font-family: Georgia, "Times New Roman", Times, serif; |
| margin-left: 15%; |
| margin-right: 15%; |
| } |
| #logo { |
| margin: 0; |
| padding: 0; |
| background-image: url(http://wordpress.org/images/wordpress.gif); |
| background-repeat: no-repeat; |
| height: 60px; |
| border-bottom: 4px solid #333; |
| } |
| #logo a { |
| display: block; |
| height: 60px; |
| } |
| #logo a span { |
| display: none; |
| } |
| p, li { |
| line-height: 140%; |
| } |
| </style> |
| </head> |
| <body> |
| <h1 id="logo"><a href="http://wordpress.org"><span>WordPress</span></a></h1> |
| <?php |
| switch($step) { |
| |
| case 0: |
| ?> |
| <p>Welcome to WordPress. Since you’re upgrading from b2 everything should be relatively |
| familiar to you. Here are some notes on upgrading:</p> |
| <ul> |
| <li>If you’re using an older version of b2, it's probably a good idea to upgrade |
| to at least .61 before making the leap to WordPress.</li> |
| <li>The templates are so much better, and there is so much more going on than |
| before it’s probably worth it to start from scratch and work back to your |
| design.</li> |
| <li>You need to transfer some of your settings from your old <code>b2config.php</code> |
| to <code>wp-config.php</code> file.</li> |
| <li>WordPress issues should be discussed in our <a href="http://wordpress.org/support/">support |
| forums</a>.</li> |
| <li><strong>Back up</strong> your database before you do anything. Yes, you.</li> |
| </ul> |
| <p>Have you looked at the <a href="../readme.html">readme</a>? If |
| you’re all ready, <a href="import-b2.php?step=1">let’s go</a>!</p> |
| <?php |
| break; |
| |
| case 1: |
| ?> |
| <h1>Step 1</h1> |
| <p>Okay first we’re going to set up the links database. This will allow you to host your own blogroll, complete with Weblogs.com updates.</p> |
| <?php |
| |
| $got_links = false; |
| $got_cats = false; |
| $got_row = false; |
| ?> |
| <p>Installing WP-Links.</p> |
| <p>Checking for tables...</p> |
| <?php |
| $result = mysql_list_tables(DB_NAME); |
| if (!$result) { |
| print "DB Error, could not list tables\n"; |
| print 'MySQL Error: ' . mysql_error(); |
| exit; |
| } |
| |
| while ($row = mysql_fetch_row($result)) { |
| if ($row[0] == $wpdb->links) |
| $got_links = true; |
| if ($row[0] == $wpdb->linkcategories) |
| $got_cats = true; |
| //print "Table: $row[0]<br />\n"; |
| } |
| if (!$got_cats) { |
| echo "<p>Can't find table '$wpdb->linkcategories', gonna create it...</p>\n"; |
| $sql = "CREATE TABLE $wpdb->linkcategories ( " . |
| " cat_id int(11) NOT NULL auto_increment, " . |
| " cat_name tinytext NOT NULL, ". |
| " auto_toggle enum ('Y','N') NOT NULL default 'N', ". |
| " PRIMARY KEY (cat_id) ". |
| ") "; |
| $result = mysql_query($sql) or print ("Can't create the table '$wpdb->linkcategories' in the database.<br />" . $sql . "<br />" . mysql_error()); |
| if ($result != false) { |
| echo "<p>Table '$wpdb->linkcategories' created OK</p>\n"; |
| $got_cats = true; |
| } |
| } else { |
| echo "<p>Found table '$wpdb->linkcategories', don't need to create it...</p>\n"; |
| $got_cats = true; |
| } |
| if (!$got_links) { |
| echo "<p>Can't find '$wpdb->links', gonna create it...</p>\n"; |
| $sql = "CREATE TABLE $wpdb->links ( " . |
| " link_id int(11) NOT NULL auto_increment, " . |
| " link_url varchar(255) NOT NULL default '', " . |
| " link_name varchar(255) NOT NULL default '', " . |
| " link_image varchar(255) NOT NULL default '', " . |
| " link_target varchar(25) NOT NULL default '', " . |
| " link_category int(11) NOT NULL default 0, " . |
| " link_description varchar(255) NOT NULL default '', " . |
| " link_visible enum ('Y','N') NOT NULL default 'Y', " . |
| " link_owner int NOT NULL DEFAULT '1', " . |
| " link_rating int NOT NULL DEFAULT '0', " . |
| " link_updated DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', " . |
| " link_rel varchar(255) NOT NULL default '', " . |
| " link_notes MEDIUMTEXT NOT NULL default '', " . |
| " PRIMARY KEY (link_id) " . |
| ") "; |
| $result = mysql_query($sql) or print ("Can't create the table '$wpdb->links' in the database.<br />" . $sql . "<br />" . mysql_error()); |
| $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://wordpress.org/', 'WordPress', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '');"); |
| $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://photomatt.net/', 'Matt', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '');"); |
| $links = mysql_query("INSERT INTO $wpdb->links VALUES ('', 'http://zed1.com/b2/', 'Mike', '', '', 1, '', 'Y', 1, 0, '0000-00-00 00:00:00', '');"); |
| |
| if ($result != false) { |
| echo "<p>Table '$wpdb->links' created OK</p>\n"; |
| $got_links = true; |
| } |
| } else { |
| echo "<p>Found table '$wpdb->links', don't need to create it...</p>\n"; |
| echo "<p>... may need to update it though. Looking for column link_updated...</p>\n"; |
| $query = "SELECT link_updated FROM $wpdb->links LIMIT 1"; |
| $q = @mysql_query($query); |
| if ($q != false) { |
| if ($row = mysql_fetch_object($q)) { |
| echo "<p>You have column link_updated. Good!</p>\n"; |
| } |
| } else { |
| $query = "ALTER TABLE $wpdb->links ADD COLUMN link_updated DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'"; |
| $q = mysql_query($query) or mysql_doh("Doh, couldn't add column.", $query, mysql_error()); |
| echo "<p>Added column link_updated...</p>\n"; |
| } |
| echo "<p>Looking for column link_rel...</p>\n"; |
| $query = "SELECT link_rel FROM $wpdb->links LIMIT 1"; |
| $q = @mysql_query($query); |
| if ($q != false) { |
| if ($row = mysql_fetch_object($q)) { |
| echo "<p>You have column link_rel. Good!</p>\n"; |
| } |
| } else { |
| $query = "ALTER TABLE $wpdb->links ADD COLUMN link_rel varchar(255) NOT NULL DEFAULT '' "; |
| $q = mysql_query($query) or mysql_doh("Doh, couldn't add column.", $query, mysql_error()); |
| echo "<p>Added column link_rel...</p>\n"; |
| } |
| $got_links = true; |
| } |
| |
| if ($got_links && $got_cats) { |
| echo "<p>Looking for category 1...</p>\n"; |
| $sql = "SELECT * FROM $wpdb->linkcategories WHERE cat_id=1 "; |
| $result = mysql_query($sql) or print ("Can't query '$wpdb->linkcategories'.<br />" . $sql . "<br />" . mysql_error()); |
| if ($result != false) { |
| if ($row = mysql_fetch_object($result)) { |
| echo "<p>You have at least 1 category. Good!</p>\n"; |
| $got_row = true; |
| } else { |
| echo "<p>Gonna insert category 1...</p>\n"; |
| $sql = "INSERT INTO $wpdb->linkcategories (cat_id, cat_name) VALUES (1, 'General')"; |
| $result = mysql_query($sql) or print ("Can't query insert category.<br />" . $sql . "<br />" . mysql_error()); |
| if ($result != false) { |
| echo "<p>Inserted category Ok</p>\n"; |
| $got_row = true; |
| } |
| } |
| } |
| } |
| |
| if ($got_row) { |
| echo "<p>All done!</p>\n"; |
| } |
| ?> |
| <p>Did you defeat the boss monster at the end? Good, then you’re ready for |
| <a href="import-b2.php?step=2">Step 2</a>.</p> |
| <?php |
| break; |
| case 2: |
| ?> |
| <h1>Step 2</h1> |
| <p>First we’re going to add excerpt, post, and password functionality...</p> |
| |
| <?php |
| |
| $query = "ALTER TABLE $wpdb->posts ADD COLUMN post_excerpt text NOT NULL;"; |
| $q = $wpdb->query($query); |
| // 0.71 mods |
| $query = "ALTER TABLE $wpdb->posts ADD post_status ENUM('publish','draft','private') NOT NULL, |
| ADD comment_status ENUM('open','closed') NOT NULL, |
| ADD ping_status ENUM('open','closed') NOT NULL, |
| ADD post_password varchar(20) NOT NULL;"; |
| $q = $wpdb->query($query); |
| ?> |
| |
| <p>That went well! Now let's clean up the b2 database structure a bit...</p> |
| |
| <?php |
| $query = "ALTER TABLE $wpdb->posts DROP INDEX ID"; |
| |
| $q = $wpdb->query($query); |
| |
| ?> |
| |
| <p>One down, two to go...</p> |
| |
| |
| <p>So far so good.</p> |
| <?php |
| |
| $query="ALTER TABLE $wpdb->posts DROP post_karma"; |
| $q = $wpdb->query($query); |
| flush(); |
| ?> |
| |
| <p>Almost there...</p> |
| |
| <?php |
| |
| $query = "ALTER TABLE $wpdb->users DROP INDEX ID"; |
| |
| $q = $wpdb->query($query); |
| upgrade_all(); |
| ?> |
| |
| <p>Welcome to the family. <a href="../">Have fun</a>!</p> |
| <?php |
| break; |
| } |
| ?> |
| |
| </body> |
| </html> |