Few months ago, with my upgrade to WordPress 2.0 I discovered the site WordPress.Com. I had to create my Akismet account, which showed me that place.
Unfortunately, just a few hours later we discovered one very nasty problem with this site. The WordPress version there was using (in conjunction with the Apache server there) this nice feature, in which your post title is practically (part of) the WordPress’ post URL. It sounds quite neat, with the exception that the server there seemed to have some issues with the Cyrillic letters and its mod_rewrite is failing from time to time to translate well the title. This failure directly results in “Error 404”, returned by the WordPress software.
To make the things even worst, the error seems to happen only if you browse from “selected IPs”. For example I never had any problem when I was browsing from some (anonymous) proxies, but in 90% of the cases I was always getting this 404 error if I was browsing from home. In short: Complete madness.
My tries to get the problem resolved from the “support” ended without any success. The answer “it works for me” (which, to be honest, is quite natural in most of the Free software communities) was given and confirmed. True, it worked for them.
I almost decided to start convincing my friends to move “under my wing” (i.e. to change their blog’s URI’s “once and for all”), when today one possible solution popped up into my mind!
I guess not many of the WordPress users know the feature “Post Slug”. [Part of] The means of this “slug” is to be “friendly URL” of your post, in the cases when WordPress is configured with this feature. No matter what title you write, this “slug” will always be used to form the URL of your posting.
By remembering this feature, I felt just like stroke by lighting! And after that – like stroke by bolt of stupidity! How could I forget about that? I am WordPress user for almost 3 years, I __had__ to know that already.
The experiment I made was quite successful. My Cyrillic test posting received nice, Latin-only URL. Immediately after that I decided to write this in order to inform my friends and the rest of the community about this possible solution.
In short: __If you use any non-Latin letters for your post in WordPress.Com, it’s _highly_ recommended to write English “Post Slug”__. You will find the “Post Slug” box in the administration interface, just left of your writing box. The slug should be just plain English (or 6lyokavitza-like, if you do not know English) translation of your post title, but you _must ensure_ that there are no spaces in it.__ If you need spaces, replace them with ‘-‘. Also, if you need other symbols, just skip them. The slug must be composed of only Latin small and big letters and the ‘-‘ dash. If you do so, you will get rid of the nasty problem.
Although this will resolve the problem with your future posts, nothing can resolve the problem with the already existing posts. For the already existing posts you will have 2 alternatives:
1. Do a “Post slug” for all of them. If you do this, it will most probably make any previously linked postings “Error 404”, because this effectively changes the URL of your older posts (that’s the point, isn’t it?). __But__ it will make open the eyes of your readers, who had the “404 problem” before. It’s your sole choice.
2. Do not do anything. You will keep any (possibly) existing links to posts, but the old posts will still result in “Error 404” for some of your readers.
Finally, I would like to advice WordPress.Com owners (and WordPress programmers) one thing: __discover and fix that damn bug__. I cannot believe that Russian or other non-Latin programmer does not see it from time to time. Use her/his expertise and fix it! Get the Apache administrator to check server’s mod_rewrite plug-in for any possible bug when using non-Latin URLs. And you will have it.