「メイド・イン・ヘブン」スキン適用中

子テーマで多言語対応させるため翻訳ファイルを独自に編集する方法

カスタマイズ
この記事は約3分で読めます。

子テーマ側で「言語ファイル(翻訳ファイル)」を変更して、Cocoon自体が出力している文字列を変更できるようにしました。

Cocoonは、日本語環境に最適化しているので、翻訳してまで使う意味は薄いと思います。しかし、実装的には大した手間ではないので機能追加しておきました。
Cocoonは、日本語環境でカスタマイズしやすくするために、テンプレートファイルのキャプションは日本語で記入してあります。ですので、「日本語→外国語」といった翻訳をする必要があります。

子テーマ側で翻訳する主な手順

子テーマ側で翻訳するのに必要な主な手順はこちらです。

  1. 親テーマのlanguagesフォルダを子テーマ直下にコピペする
  2. Poeditをインストールする
  3. Poeditで対象の翻訳ファイルを開く
  4. WordPressの言語設定を変更する

WordPressの言語ファイル編集ソフトとして、Poeditという優秀なソフトがあります。

日本語環境でも使えるソフトなので、このソフトさえ使えれば、比較的簡単に「言語ファイル(翻訳ファイル)」を編集することができます。

親テーマのlanguagesフォルダを子テーマ直下にコピペする

まず、親テーマにlanguagesというフォルダがあるので、コピーします。

そして子テーマのフォルダ直下にペーストします。

languagesフォルダーを子テーマにコピペする

Cocoonは、子テーマに言語ファイルがないと、親テーマの言語ファイルを読み込む仕様になっています。

逆に、子テーマ内に言語ファイルがあると、子テーマのものを読み込みます。

この「子テーマの言語ファイル」を編集することで、親テーマのアップデートの影響を受けることなく、独自の言語ファイルを作成することができます。

Poeditをインストールする

WordPressの言語ファイルを編集するには、Poeditというツールがお勧めです。

Poedit Translation Editor — Poedit
Simple translation editor for gettext, XLIFF and JSON

サイトは英語ですが、日本語の言語環境で編集することも可能です。

Poedit起動画面

インストール方法や簡単な使用方法はこちら。

WordPressテーマをマルチ言語対応(国際化)させる方法
Wordpressを様々な言語に対応させるには、マルチ言語対応させる必要があります。 マルチ言語対応というと、…

Poeditで対象の翻訳ファイルを開く

子テーマのlanguagesフォルダ内の言語ファイルを開きます。

Cocoonには現在、以下の言語ファイルの雛形があります。(v1.6.7以降)

  • en.po(英語)
  • de.po(ドイツ語)
  • fr.po(フランス語)
  • pt.po(ポルトガル語)
  • ko.po(韓国語)

.poファイルをPoeditにドラッグ&ドロップすれば、言語ファイルを編集できます。

Poeditで英語の言語ファイルを編集

編集が終わったら、保存ボタンを押せば、.moに自動的にコンパイルされます。

保存ボタンでコンパイル

WordPress自体は子テーマに作成された.moファイルを参照して翻訳テキストを出力します。

英語以外は、雛形のみです。といっても、英語も時間がなくて中途半端にしか作成していません。

「コードから更新」ボタンは押さないように

Poeditの「コードから更新」ボタンを押すと、子テーマを対象に翻訳ファイルを再生成してしまうので押さないようにしてください。

コードから更新ボタンを押してはいけない

WordPressの言語設定を変更する

最後に、WordPress管理画面の「一般設定」から「サイトの言語」を目的の言語に設定します。

サイトの前後やタイムゾーンの設定

すると、サイトの表示言語を変更できます。

サイトを英語化

言語ファイルを作成した際には

このように、Cocoonは一応、マルチ言語対応にはなっていますが言語ファイル自体は完全に作成されていません。

もし「言語ファイルを作成したから親テーマ内に同梱してもいいよ」という方がおられましたら、是非フォーラムにてご連絡ください。

Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。 1つのトピックにつき1つの質問を書き込んでください 不具合・カスタマイズ対象ページのURLを提示し高速化を無効にしてください 該当部分のキャプチャ・環境情報とともに書き込んでいただけると助かります...

「一部のみ翻訳した」とかでも良いので、よろしければお願いいたします。

一部翻訳でも、親テーマに組み込まれれば、今度はそれを元に編集したものが積み上がっていきます。
タイトルとURLをコピーしました