Finally the time has come. Although I wanted to do this from a long time, only now did I found the time and the technical knowledge to do it:
I divided the blog.
I divided all the Italian posts from the English ones. I created a new blog at http://it.pietrosperoni.it, and my italian posts will, from now on, be posted over there. And only over there. Most of the people (3) who read me (5) either read Italian or English posts. And I am sure it must have been very confusing to scroll through a page and find some posts in English and some in Italian. Plus I always had the sensation that I could not write too much in one language, or possible readers of the other language will just assume the blog contains no information at all for them, and dismiss it. This in time made me slow down posting, as I could not always follow particular threads, that would have involved to post many times, in one language.
But now all this has come to an end.
Of course if you want to read entries from both blogs you should add the rss from the italian blog too. Some topic will remain confined to this blog (like tags, for example), others will remain there (like italian politics), while other will span through both medium (like diet, which already is present in both). The wiki in this case should act like a glue, creating a space where entries from both are aggregated. Plus, being a wiki, I (and whoever wants to come and play) will use it to keep notes, aggregate extra content, and generally make some pages stand out while others will only show the blogs entries, the bookmarks, and the context (i.e. the links from delicious popular page, and from technorati).
Generally it is not a smart idea to to come here every time to see if I have written something. I tend to write when I have something to say, so many days might pass before I say something, then for some days I might make one or more post a day. The solution is to add my rss feeds to your feed reader. Bloglines is a good one. I am sure there are better ones. Feel free to suggest them (as I am always looking for ways to improve).
Now let’s get a bit more technical: making this change also meant getting my hands dirty with MySql. One thing that I always avoided doing, more for the fear of making changes that I would not know how to undo, than for other reason. I discovered the power of phpMySql. A really easy user interface with which I could browse every table, copy them, change any value I wanted. At the beginnign I was weary about using it, but with time I acquired confidence, and now I some time find the wordpress user interface too fucking slow, and just prefer to hack the tables. Of course all this come for a price, and the price is the constant awarness taht you might be screwing your blog forever. SO you need to save it, pretty much before every step, and surely before every working session. This is particularly important since I had not worked with wordpress code at all, and I can only assume the way in which wordpress is using the tables. And I have to say that it is quite straightforward (the table : wp_categories contains a list of all the categories
), but there is always space to be surprised. Like when I said that a parent’s parent of a category was its nephew and wordpress went looping around generations of categories.
Technicaly what I did was dead easy:
- Installed a new wordpress blog.
- Saved a copy of the old one DB (just in case).
- Substituted all the tables of the new ones with the old ones except for the user and options table (don’t ask me why, it just would not let me log in if not). At this point I had two copies of the same blog on the net.
- I deleted from the italian one all the english posts
- I redirected each of the Italian posts in the English blog to their Italian counterpart, thanks to Angsuman’s Permanent Redirect (luckily I had only 20 italian posts so far).
- Laid back thinking how cool am I
I also fixed a small feature in wordpress which from my POV has become a bug. Most of you have noticed that I assign many categories to the same post. I use them as tags, and I have explained before how I think we should be generous in tagging. Well, wordpress categories weren’t really designed for this, and although they changed a bit the code in WordPress 2.0 to give the possibility to create new categories as you assign them, they were really not considering having people using hundreds of categories. Which is not that big number if you consider them as tags, and you consider that you might easily reach a vocabulary of few thousand keywords. So every time I would open the “edit post” page, I would only receive some categories. This was not only annoying, it was also very unfortunate, because I had to redefine all the categories again, or when I where to save the post, all the categories that did not appear where taken off. Very annoying. I asked for help in the wordpress forum, but no one came in my rescue. Then one morning, playing with mysql, I noticed that some categories had a parent which was not present anymore, and they would eventually not appear. Once I fixed that still the number of categories appearing in the edit post page had risen, but was not complete. I counted them: 100. A nice round number that sounds like someone’s decision. I went to the code. Played around, looked, poked, and finally I found the following line:
function return_categories_list($parent = 0) {
global $wpdb;
return $wpdb->get_col("SELECT cat_ID FROM $wpdb->categories WHERE category_parent = $parent ORDER BY category_count DESC LIMIT 100");
}
LIMIT 100. LIMIT 100, but why? Are they afraid of spam? Is there not enough space? This sounded like artificial scarcity at its worse. I changed it into LIMIT 10000, and suddenly everything worked fine as it always should have.
Of course I changed both blogs. I also installed Next/Previous Post in same Category, which worked perfectly, and used it to build the two little boxes that you see on the post page, and that let you navigate to posts with similar topic. I was scared that it would not work well if you had more category per post, but it worked perfectly, also not showing nothing if there is no previous/next post. So you could put even hundred of categories, but only the one that are in common with other posts will appear. 5 stars.
Oh, yes and I tweacked the css to make the blog a bit less heavy. So, how do you find it?
Related posts:
- My new homepage Recently I have made some serious changes to my homepage. SOme of those changes I have been planning from a long long time. Others were more sudden. The central page is of course at pietrosperoni.it that leads to home.pietrosperoni.it. But then there was something that I wanted to do for a long time. Integrate my [...]...

That was a neat idea to separate the languages into two blogs, but isn’t it harder to monitor everything? I know it is possible to have different menus in wordpress so that everything is in one database, but still in different languages, each set with its own menu. I have not done that yet.
Anyway. I write in three languages (or at least I try to), English, German and Italian. Sometimes I add something in Spanish, but only info. written by others. I have found a plugin to eliminate text problems with the German umlaut, but am having problems when I call up Italian RSS (and Spanish) – the accents cause strange symbols to come up instead of the letters. Did you find a plugin for that and was it easy to use?
It is in fact more complicated than following one. But not massively, and there are advantages in keepng the languages separated. I do keep everything in one database, just the tables start in a different way. I copied the tablesfrom the old blog to the new one and substituted to the tables that were automatically created by the new blog. To make sure the language specific symbol are set up correctly you need to add a meta information to your page, in the head. Something like:
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
with the specific charset depending on the language. So utf-8 is a normal international. Just go in a spanish page where the characters are rendered correctly and copy the relevant line from their source code. I can assure you that that one line is not under copyright
I think the readers experience will be improved. When a blog is only in English / Italian the non-speakers sometimes give up.
Besides, you could always consider translation if you get an exceptional post.