My first attempt at importing blog postings from Radio Userland to WordPress resulted in over seventy categories. Every post with a different combination of categories like “MySQL; LAMP; Technology; Security” created a new category with that exact name, rather than a one-to-many post-to-categories representation. WordPress supports this, as does Radio. The communication breakdown occured between the two, in an export routine I used that created MT-compatible text files.
I could have kept experimenting with different imports, but I’d rather just plow ahead with what I’ve got, so I took a look at the WordPress schema and figured out what I’d need to hack. I used Visual FoxPro to read in the category table, figure out which (multiple) category posts I should have instead of the single, multi-category category, and rewrote the many-to-many file that joins the posts to the categories.
That narrowed it down to 15 categories. I added a new one, “Personal” for notes about politics and personal goings-on. I hope to squash the four, now three “My” categories, which are the old example categories left over from the original Radio install. Stay tuned!
I noted the counts of the number of posts per category was showing zero for several categories. There’s a (denormalized) category_count field in the category table. I popped open phpMyAdmin on the server to poke around and finally issued a “update wp_categories set category_count = (select count(*) from wp_post2cat where category_id = cat_ID)” to get the counts to update. Thirteen rows updated in 0.0635 sec. Darn near as fast as Rushmore.