数日前に公開した当サイトだが、見ていて違和感があった。
細部にやたらと英語が多いのだ。WordPressには様々なテーマがあって、今使っているテーマはダウンロードしたものなんだが、よくよく考えたら外国人が作成したテーマだった。そりゃあそうだよなと思い、テンプレートファイル(PHP)を触るわけだが、どうもうまくいかない。調べてみるとさすがワールドワイドなWordPress。テーマすら多言語対応が可能になっていた。というわけで、日本語にローカライズする方法をまとめてみた。
本ページはアフィリエイトプログラムによる収益を得ています。
例えば下記画像の赤枠部分を翻訳したいとする。
ソースコード的には以下のように実装されている。
<?php the_content( __( 'Continue reading <span class="meta-nav">→</span>', 'coraline' ) ); ?>
微妙にソースがわかるもんだから、「Continue reading」を「続きを読む」とかにかえたらいいんだなと思ってしまうが、これが罠。「__()」ってのは翻訳を行いますよって意味のWordPressにおける決まり事で、第1引数(Continue reading
これを翻訳する場合、翻訳用のファイルが必要となる。具体的には、
ja.po
ja.mo
という2つのファイルが必要。これらのファイルは手動でも作れなくもないようだが、Poeditというソフトを使ったほうが無難(Windows版もMac版も存在する)。このソフトをイントールして起動したら、
ここで出てくるPOTファイルってのは、翻訳定義の元ネタになるファイルらしくテーマ毎に作られている。インストールしたテーマの「languages」フォルダにあると思うのでそれを読み込む。
すると早速エラーが出たけど、とりあえず無視。
画面上半分が翻訳キー、下半分が翻訳後の文字列(日本語)となる。なのでこんな感じで入力。
これを保存するとまたエラーが出たが、とりあえず「default.po」と「default.mo」ができるので、「ja.po」と「ja.mo」にリネームする。このファイルをWEBサーバー上のテーマフォルダにある「languages」にFTPでアップする。これでOK。結果はこのサイトをご覧あれ。
随分面倒だが、これもワールドワイドなアプリだけに多少は仕方ないかな。