Did you wake up this morning only to find that your blog had a big warning written all over it’s face? I am not going to explain what the warning is about, only how to fix it – and brace yourself: it’s a nightmare. But if you are reasonably familiar with phpmyadmin, it’s fixable, so just do it:
First you should rename the folder that contains your blog. In that way you have a copy of everything inside it as it were, but you can use the same name for your new blog. You will need the wp_contents folder later.
Open the admin tool of your mySQL database. If you are on One like I am it’s on dbadmin.one.com. Export all tables of your wp installation, this should give you a text area with the queries that makes up all the tables in your blog. Copy the text and paste it into a text file. You now have a backup of you wp database.
——————————————————————–
Delete the tables.
Install a fresh version of the latest wp.
Copy the insert queries from your exported tables into the tables of the freshly installed wp blog. It might only be necessary to copy content into wp_posts (holds both posts and pages). This represents the heart and soul of most blogs.
An insert query looks something like this:
INSERT INTO `wp_posts` VALUES (38, 1, ’2009-12-24 10:13:18′, ’2009-12-24 08:13:18′, ‘The world came to Copenhagen for the climate summit dubbed cop15 and later Nopenhagen as a result of the missing result……..’, ‘ ‘,’ ‘, ‘publish’, [the rest]);
Back in phpmyadmin choose the wp_posts table, click the ‘sql’ button, and paste the text.
Ups! did you get an error? That is because the new wp_posts table is different from the old posts table. A collumn has been removed. How nice ! This means you’ll have to remove the entry from the now removed collumn (and do this for each insert), before you run the insert queries. Remove the 7th entry (second after the post content entry) – on all my posts it was empty – which explains why the wp folks have chosen to remove that column.
INSERT INTO `wp_posts` VALUES (38, 1, ’2009-12-24 10:13:18′, ’2009-12-24 08:13:18′, ‘The world came to Copenhagen for the climate summit dubbed cop15 and later Nopenhagen as a result of the missing result……..’, ‘ ‘, ‘publish’, [the rest]);
Notice there is only one entry between the content entry (highlighted in red) and the ‘publish’, entry.
Now the number of columns in the new wp_posts matches the number of entries for each insert query you are trying to run, and you are ready to paste it into the SQL textarea again, and press go.
Unless you get an error you have now have recreated all your old posts in you new wp_posts table.
If you keep getting errors, try running one insert at a time, to give yourself a chance to fix each query correctly.
However, you might also have a lot of comments, links, and categories/tags that you want to keep. Then you have to copy the insert queries for these tables too. I think there might be an inconsistency in another one of these tables. It is similar, so all you have to do is compare the columns of the old and the new version of the table in question.
——————————————————————–
I know, it’s a headache that makes you wonder weather you chose the right blogging system/career path.
Good luck, and do get in touch if, you run into problems. I might have time to help.


















































