🤩

WordPressのテーマを翻訳しよう(Poedit 編)

に公開

はじめに

WordPressテーマを日本語化するには、次のような関数を使ってテキストを出力します:

_e('文字列', 'テキストドメイン');
__('文字列', 'テキストドメイン');

ここで使われている「テキストドメイン」は、翻訳対象の文字列を識別するためのテーマごとの一意なIDで英数字で構成されています。


テキストドメインの確認・設定

通常、テーマの style.css の冒頭に次のような記述があります:

/*
Theme Name: Hoge
Text Domain: hoge
Domain Path: /languages
*/
  • Text Domain はテーマ固有のIDで、通常はテーマフォルダ名と一致させます。
  • Domain Path は翻訳ファイルを置く場所で、通常は /languages

もし記載がない場合は、自分で追加しましょう。


翻訳ファイル用フォルダを用意する

翻訳ファイルは通常、テーマフォルダ内の languages ディレクトリに置かれます。

このフォルダがなければ作成してください。
名前は自由ですが、style.cssに書いた、Domain Path に一致させる必要があります。


functions.php に読み込み処理を記述

functions.php に以下のコードを追加して、翻訳ファイルを読み込みます(WordPress 6.8 未満の場合):

function mytheme_setup() {
  load_theme_textdomain('hoge', get_template_directory() . '/languages');
}
add_action('after_setup_theme', 'mytheme_setup');

✅ WordPress 6.8以降ではこのコードは不要です。


Poeditをインストールする

翻訳には Poedit という無料アプリを使います。

▶ Poedit公式サイト

自分の環境に合ったバージョンをダウンロードし、インストールします。


新しい翻訳ファイルを作成

Poedit を起動し、メニューの「ファイル → 新規」から翻訳言語に「日本語」を選び、上のメニューのとこにある保存ボタンで、languages フォルダ内に ja.po として保存します。同時にmoも保存されます。


翻訳プロパティを設定

  1. メニューから「翻訳 → プロパティ」を開く

  2. 「プロジェクト名」や「翻訳者情報」を入力(任意)
    テーマ名と作者を入れます。

  3. 「ソースの検索パス」タブを開き、パスのテキストエリアにテーマフォルダをドラッグ&ドロップ

  4. 「ソース中のキーワード」タブで以下を追加で入力します:

__
_e
esc_html_e
_x
_n

設定が終わったら下の「OK」ボタンをクリックします。


翻訳を開始する

  1. メニューの「翻訳 → ソースコードから翻訳」をクリック
  2. 表示された一覧から順に翻訳(対訳の部分に入力します)
  3. 翻訳が完了したら 保存 を忘れずに!(ja.poja.mo が作成されます)


翻訳結果を確認・編集する

WordPressのサイトを開くと、対応するテキストが日本語に翻訳されているはずです。

あとから翻訳を修正したい場合は、Poeditを再度起動して「ファイルを閲覧」からテーマの ja.po を選択し、同様の手順で編集・保存すればOKです。


おわりに

ここまででテーマの日本語化が完了です!
プラグインでもやることは同じです。
Poeditを使えば継続的な翻訳管理も簡単にできます。


Discussion