WordPress in Japanese and English

Problem: Can not write in Japanese and English using WordPress. Characters display as ? ?? ???

I was trying to figure out how to write in Japanese on my WordPress blog. All Japanese characters were coming up as question marks, appearing like “????? ? ?? ???” instead of characters. I searched for a solution to this and found a few plugins that did a ton of unnecessary things, and some didn’t work. I tried out Gengo but I didn’t like it very much. However if you’re reading this for a solution on how to write Japanese and English or translate your page it might work well for you! Here’s the link to Gengo.


If you’re running WordPress 2.2 or higher, then the Collation should be set correctly. Here’s a link to their documentation, and here’s an excerpt.

As of WordPress Version 2.2, DB_COLLATE was made available to allow designation of the database collation (i.e. the sort order of the character set). In most cases, this value should be left blank (null) so the database collation will be automatically assigned by MySQL based on the database character set (i.e. DB_CHARSET). Set DB_COLLATE to one of the UTF-8 values defined in Unicode character sets (utf8 section) (see dev.mysql.com) for most Western European languages.

Now if you are running an older version, or you upgraded from an older version, or for some reason things aren’t working out I’ll post my solution below.

Solution: EASY! First backup your database in case you mess this up. Next use phpMyAdmin and choose a table (wp_posts) and then select the field you want to edit or show Japanese. Let’s say you want your posts to display Japanese, you would edit “post_content” and change the Collation to utf8_unicode_ci. It might have latin1_swedish_ci as the default. You can do this to any field. Posts, comments, categories, etc. Now you can Japanese it up! You can write in Chinese, Korean, whatever character set you’re using most likely. Niiiiiiiiiiiiiice.

If this doesn’t make sense to you then I’ll give you a step by step break down.

  1. Back up your database. Not sure how? Check out this wordpress database plugin called WP-DBManager.
  2. Log into your phpMyAdmin
  3. Choose your database on the left
  4. Under your database on the left, click on wp_comments
  5. On the right you’ll see Field, Type, Collation, Attributes, etc.
  6. For the Fields that have Collation set as something other than utf8_unicode_ci you should tick the check box.
  7. After you ticked all check boxes in that table, click the pencil icon at the bottom. When you mouse over it there should be a tool tip that says “change”. When you click this you can edit those fields.
  8. Using the drop down box on each field you can now change the Collation from whatever it is (example latin1_swedish_ci) to the bottom selection in the drop down box which is utf8_unicode_ci.
  9. Hit Save
  10. Now click on the next table on the left hand side which should be called wp_links.
  11. Repeat these steps for each table.

I also found this solution from the wordpress support area.
2.2 update Japanese character problem (“?”)

WordPress, now in 日本語言語!


24 thoughts on “WordPress in Japanese and English

  1. what in the world is up with that comment above mine? That is the weirdest spam I’ve ever seen.

    ANYWAY, Nice post! I had a similar problem with wordpress and found the solution after a lot of searching (I put the link to the post I did about it as my website link).

    I am thinking about doing a little series on helping Japan-bloggers with improving their wordpress blogs (more of an interchange of help really. I’m a bit of a wp newbie too). One thing I notice on almost all of the wordpress Japan blogs is that no one has installed a mod that notifies commenters when there is a reply! I have not installed one yet either, but when I do I want to recommend it to everyone else and tell them step by step how it is done (save them some trouble hopefully).
    If you know any good mods that we should all know about let me know and I will spread the word.

    btw, I assumed that this site ran on drupal (because of the drupal favicon). Is it some sort of drupal wordpress hybrid?

  2. This is really really great advice. I have one blog about raising children in Japan and related issues that’s written entirely in Japanese (http://bigdaddyjapan.com). I changed the wordpress settings so that everything is Japanese and in utf-8, which is fine because utf-8 has no problem with English.

    However my Japanese news commentary site (newzjapan.com) is primarily in English. Until now I thought that it was impossible for me to use Japanese characters along with the English without switching the whole site to utf-8.

    Now thanks to you I can. This is extremely valuable information. Thank you for sharing it. Multilingualism on the net is good.

  3. @zurui and Kanjidude : You bet! I’m glad this could help! The reason the Japanese in my post looks messed up right now is because I changed mysql servers and I imported the data in the wrong setting. Since I had a back up I could have imported again but I didn’t notice it right away.

  4. Thank you so much >_<

    When I was still in wordpress.com , I have no problem using Japanese character. Recently I moved my blog, and the characters won’t show up. Thanks a lot… ^^

  5. Thanks for your great advice. I spent so much time installing and reinstalling WP, trying to figure out what was going on. Your advice was spot on! I’m trying to set up a mirror site in Japanese, and I’m still testing.

  6. ehh.
    I’m finding out that switching the input mode (among hiragana, katakana and direct input) is very very cumbersome. Do you know any work around? Are there any ways to create keyboard shortcuts?

  7. I had a similar problem with a different WordPress blog. The problem seems to be that, even if you set your blog encoding to UTF-8 in the preferences, it still goes through some sort of ASCII parser. If you try to include any Unicode characters that are outside the ASCII set, it replaces them with the undefined symbol, the question mark.

    In short bursts of foreignity, you can just go to HTML view and insert the Unicode decimal or hexadecimal entities (鮓 or 鮓 for 鮓, for example) into the code. This will make them appear properly in the post, but they will revert to the undefined symbol (?) if you later try to edit the post unless you manually re-insert the entities into the code.

    You can get the entities by downloading the program BabelMap, installing it, and going to the “character” view at the bottom of the program. Here, you can type or paste your short burst of foreignity, and get to the decimal entity by choosing the “NCR (dec)” view or the hexadecimal “NCR (hex).”

  8. I too tried “a few plugins that did a ton of unnecessary things, and some didn’t work”, only to learn here than all I had to do was change the encoding in my sql databases. Argh!

    Thank you for the tip!

  9. バージョン3.でもこれで大丈夫ですか?でも、データベースいじるの大変かな、素人には。いま下のサイトを日本語でコメントかけるように設定してます。アドバイスあったらくださいね。

  10. Editing for comments is not difficult.
    1) You can have your hosting company do it
    2) using phpMyAdmin, under Collation, change setting to utf8_unicode_ci and save.

    For new installations of WordPress just make sure to select “utf8_unicode_ci” when creating the database in the beginning in phpMyAdmin.

    Here are some images that might help, good luck!
    Image 1 // Image 2

Leave a Reply

Your email address will not be published. Required fields are marked *