WordPress 2.3 Database Schema Changes

September 5, 2007
by Ryan

WordPress 2.3 changes the database schema in three places. The biggest change is the taxonomy related changes I discussed earlier. Since taxonomy was going to cause backward compatibility breaks in the schema, we decided we might as well break it thoroughly and create something we liked. Thus the categories, post2cat, and link2cat tables were dropped and replaced by three new tables. Plugins that reference the old tables will break. They will need to be updated to either use API, preferably, or use SQL that references the new tables instead of the old ones.

The other two changes are small and low-impact. A new status of ‘pending’ was added to the post_status field of the posts table. This won’t affect most plugins. Plugins that check post status might be affected. Those plugins can do some defensive programming to insulate themselves against new status additions.

Finally, several unused fields were dropped from the options table. option_can_override, option_type, option_width, option_height, option_description, and option_admin_level are now gone. These fields have been unused for years. The time had come to finally drop them and clean up the options table.

51 Responses
  1. September 5, 2007

    Thanks for this useful information. I’ll translate the important parts into Turkish and publish in my site for Turkish users. It seems that we will have to fix all the compatibility problems with the former releases of the plugins that we are using.

  2. September 5, 2007

    in the beta script link2cat, post2cat, categories are not dropped when running upgrade.php. Will it be dropped when it goes gold?

  3. September 5, 2007

    GaMerZ, yes, we’ll probably add the drop right before RC1.

  4. September 5, 2007

    Might as well smash it up and clean that crap up. Still on for the 24th for the new version with the dropped tables?

  5. September 5, 2007

    There is a reason why many bloggers aren’t even on 2.2 yet. It’s this we’ll change the tables and the plugins will break.

    How can we reduce the plugin is not compatible cycle?

  6. September 5, 2007

    The big question is….Will WordPress 2.3 be more secured? and about the javascript — it is very slow still – many browsers are having problem with it.

  7. September 5, 2007

    thanks Ryan.

  8. September 5, 2007

    Ryan, I assume that also the upgrade-functions.php in http://codex.wordpress.org/Creating_Tables_with_Plugins is permanent moved to the includes folder. Maybe it’s good to inform then the plugin authors for this change, cause this codex page is often used as template.

  9. September 6, 2007

    Thanks for the great info.

  10. September 6, 2007

    Thank for your post, I will update, if necessary, my plugin.

  11. September 6, 2007

    thanks for the information

  12. September 6, 2007

    I think WP need to stick with one javascript framework. I see many of it right now in the sources.

  13. September 6, 2007

    Thanks for the info … Looks like an upgrade will require a lot of QA time.

  14. September 6, 2007

    Is the pending status change to post in the future instead of just post dating a post? Or is it more for Multiple user based WPblogs for editors/admin to flag as “approved”?

  15. September 6, 2007

    Does anyone know if there will be a migration path from Ultimate Tag Warrior tags (and permalinks) to WordPress 2.3 tags? If not, I’ll be stuck on my current version forever. I’m way too dependent on those tags and the URLs are all in the search engines now.

  16. September 6, 2007

    @technabob:
    Yes, WP has a converter for UTW tags(as well as a Simple Tagging Importer, not sure about others).

    WP also has a Category -> Tag converter(All or a select few if you want).

  17. September 10, 2007
    purelife permalink

    oh dear lord i’ve had enough of this. time to move away from wordpress and to textpattern for me.

  18. September 21, 2007
    tricky permalink

    I was reading about this, and i’m not PHP/MySQL skilled, but since i work with css/xhtml i tend to understand some code. MySQL syntax is very understable.

    So, if i have a plugin that relays on the old categories tables,


    $wpdb->get_results("SELECT cat_ID as id, cat_name as name FROM $wpdb->categories WHERE category_parent = '$parent_id'");

    shoulde i make the select “id as id” “slug as name” FROM $wpdb->taxonomy WHERE (get only items with taxonomy categoy) ?

Trackbacks & Pingbacks

  1. Databázové zmeny vo Wordpresse 2.3
  2. Datenbankänderungen in WordPress 2.3 | Bloganbieter.de Blog
  3. Every Flavour Beans » What is New in Wordpress 2.3 (Beta 1/2)?
  4. WordPress 2.3 coming September 24 [builder2]
  5. Famous last words of Marius » RWC - South Africa, Namibia and RSS Update for 9 September 2007
  6. All Pumped Up! » Blog Archive » Database changes in WordPress 2.3
  7. DimidoBlog » Bloglinks der Woche 03.09.-09.09.2007
  8. Will WordPress 2.3 database schema changes break plugins? - Bullroarer
  9. On WP 2.2.3 and WP 2.3 « Geof’s Relentless Kvetching About WordPress
  10. Displaying WordPress 2.3 Tags | iface thoughts
  11. » Nuovo tema » Alessandro Melandri
  12.   WordPress 2.3 and Plugins Compatibility by HotSURFs.com Blog
  13. Weblog Tools Collection » Blog Archive » WordPress 2.3 Features
  14. WordPress 2.3 Plugin Compatibility » Blogging News & Reviews // JaypeeOnline
  15. WordPressCHINA - WordPress中文化 » Blog Archive » WordPress 2.3 功能
  16. WordPress 2.3 功能 - 总而言之,统而言之
  17. Testing New WordPress Versions Part 4: Upgrade! » Solo Technology
  18. Wordpress 2.3 & K2 RC1 at EazyBlogga - Re-Discover the Web
  19. WordPress 2.3 and EventCalendar3 « A Guilty Pleasure
  20. WordPress 2.3 Due Out Today
  21. Wordpress 2.3: as mudanças por bernabauer.com
  22. WordPress 2.3 Thoughts at Scam City version 9.0
  23. Introducing Wordpress 2.3
  24. Le novità di Wordpress 2.3
  25. 塔塔@TaTa360.COM » Blog Archive » WordPress 2.3 功能
  26. WP Upgrade from 2.2.3 to 2.3 | Aufklarung Personal JOUNAL
  27. » WordPress 2.3 - Modifiche al Database » WordPress Italy
  28. » Tag sale « guff
  29.   Upgrade Preflight Check, comprobar la compatibilidad con WordPress 2.3 en Agamum.net
  30. WordPress 2.3 table schema; Say bye to wp_categories | Blogging Profits
  31. Jody Sachse - Wandering the Webernet
  32. Database Error at OrganicPassion » Organic Passion
  33. WordPress 2.3 Tag News « Lorelle on WordPress

Comments are closed for this entry.