運営者チーの最新活動はXをチェック

WordPressで英語テーマを日本語に翻訳する方法

数日前に公開した当サイトだが、見ていて違和感があった。
細部にやたらと英語が多いのだ。WordPressには様々なテーマがあって、今使っているテーマはダウンロードしたものなんだが、よくよく考えたら外国人が作成したテーマだった。そりゃあそうだよなと思い、テンプレートファイル(PHP)を触るわけだが、どうもうまくいかない。調べてみるとさすがワールドワイドなWordPress。テーマすら多言語対応が可能になっていた。というわけで、日本語にローカライズする方法をまとめてみた。

この記事の掲載内容は、2017年7月15日時点の情報です。現在の情報とは異なる場合がございますので、あらかじめご了承ください。

本ページはアフィリエイトプログラムによる収益を得ています。

例えば下記画像の赤枠部分を翻訳したいとする。

Google-ChromeScreenSnapz013.jpg

ソースコード的には以下のように実装されている。

<?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'coraline' ) ); ?>

微妙にソースがわかるもんだから、「Continue reading」を「続きを読む」とかにかえたらいいんだなと思ってしまうが、これが罠。「__()」ってのは翻訳を行いますよって意味のWordPressにおける決まり事で、第1引数(Continue reading )はそれ自体が翻訳キーになっているのだ。なのでこれを直してもダメ。
これを翻訳する場合、翻訳用のファイルが必要となる。具体的には、

ja.po
ja.mo

という2つのファイルが必要。これらのファイルは手動でも作れなくもないようだが、Poeditというソフトを使ったほうが無難(Windows版もMac版も存在する)。このソフトをイントールして起動したら、

PoeditScreenSnapz001.png

ここで出てくるPOTファイルってのは、翻訳定義の元ネタになるファイルらしくテーマ毎に作られている。インストールしたテーマの「languages」フォルダにあると思うのでそれを読み込む。

PoeditScreenSnapz002.png

すると早速エラーが出たけど、とりあえず無視。

PoeditScreenSnapz004.png

画面上半分が翻訳キー、下半分が翻訳後の文字列(日本語)となる。なのでこんな感じで入力。

PoeditScreenSnapz003.png

これを保存するとまたエラーが出たが、とりあえず「default.po」と「default.mo」ができるので、「ja.po」と「ja.mo」にリネームする。このファイルをWEBサーバー上のテーマフォルダにある「languages」にFTPでアップする。これでOK。結果はこのサイトをご覧あれ。

随分面倒だが、これもワールドワイドなアプリだけに多少は仕方ないかな。