「pot」タグアーカイブ

4.WordPressの自作プラグインを多言語対応させる方法。.moファイルをwordpress.orgに追加

WordPressの自作のオリジナルプラグインを多言語対応する方法

 

順序は大まかに

0. 概要:Wordpressの自作プラグインを公式ページに登録・公開して、プラグイン追加からインストールできるようにする方法

1.WordPress.orgのアカウントに登録し、公式ディレクトリにプラグインを申請する

2.プラグインの公式ディレクトリへのアップロードに必要なSubversionのダウンロードとインストール

3.Subversionを使ってWorpdress.orgの公式ディレクトリにアップロード&バージョン管理

4..potファイルから .mo ファイルを作ってプラグインの多言語化(国際化)
↑いまここ↑

 

自作プラグインを英訳(または日本語訳)する手順

wordpress.org/plugins/へと移動する。

今回は英語ページで説明する。日本語ページでも基本的にやる事は全く同じ。

WordPress.orgに登録した、メールアドレスとパスワードで、wordpress.orgにログインする。

 

ログインしたら、自分のID名をクリックする。

 

左のメニューの「Plugin」日本語だと「プラグイン」をクリックしたら、自作プラグインが表示される。
その自作プラグイン名をクリック。

 

自分のプラグインの公開ページ(ディレクトリ)に行けるので、右の「Admin(日本語の場合 管理)」をクリック。

 

Adminページの中ほどの「Continue(日本語の場合 続ける)」のボタンをクリック。

Generate POT file
For more information on POT files, domains, gettext and i18n have a look at the I18n for WordPress developers Codex page and more specifically at the section about themes and plugins.

日本語:
POT ファイルを生成
POT ファイル、ドメイン、gettext、i18n に関して更に詳しい情報は I18n for WordPress developers Codex ページ (英語) をご覧ください。さらに具体的にはテーマとプラグインについてのセクションが参考になるでしょう。

と書いてある部分。

POTファイルというのが、プラグインを多言語対応させる元となるものなので、ここからダウンロードするページへ移動する。

 

「Get POT(日本語:POTを取得)」をクリックして、POTファイルをダウンロード。

 

POTファイルがダウンロードされるので、これを Poedit を使って、翻訳ファイルの .moファイルを作成する。

参考記事:
Poeditのダウンロードとインストール、簡単な使い方

.potファイルから.poや.moファイルを作ってWordPressの言葉を変更する方法

 

翻訳した.moファイルの名前を必ず
(プラグイン名)-ja.mo
とすること。 .po も同じ名前にしておくといい。

 

翻訳が終わったら、作業フォルダ(作業フォルダの説明はここ参照)の中に、「languages」フォルダを作って、その中に .mo ファイルを入れる。
.mo だけでも翻訳はされるが、ついでに .po も入れておくと迷わなくていい。

 

Subversionを使ってWordpress.orgのディレクトリ内の「trunk/languages」にアップロードする。

まず「cd」コマンドで作業フォルダへ移動して
「svn add」コマンドで、「languages」フォルダごとアップロードできる。

 

プラグインにlanguagesへのパスを追記する。
(自作プラグイン).phpのソース上部に記載すること。

 

<?php
/*
Plugin Name: プラグインの名前(英語が望ましい)
Plugin URI: プラグインの更新情報などを載せるURL(適当でもいい)
Description: プラグインの説明文。翻訳前なので英語で。
Version: 数字。最初は1.0でいい。バージョンアップするごとに変更
Author: 作者の名前(適当OK)
Author URI: 作者のURL(適当OK)
License: GPLv2 or later
Text Domain: WordPress.orgのレジストリ
Domain Path: /languages
*/

load_plugin_textdomain( ‘WordPress.orgのレジストリ’, false, basename( dirname( __FILE__ ) ).’/languages’ );

これで、言語ファイルが 「/languages」に入ってますよ。と指定することになる。

 

コミット(更新を実行)するために、「commit -m “バージョン数”」コマンドでコミットする。

ちなみに画像では、コマンド実行ミスをしているので、「既にバージョン管理下におかれています」とエラーが出ている。
エラーが出た場合でも、焦らず正しいコマンドを実行すれば大丈夫。

 

サーバーの反映には10分程度必要だが、これでプラグインの多言語化が完成!

————-
関連記事:

0. 概要:Wordpressの自作プラグインを公式ページに登録・公開して、プラグイン追加からインストールできるようにする方法

1.WordPress.orgのアカウントに登録し、公式ディレクトリにプラグインを申請する

2.プラグインの公式ディレクトリへのアップロードに必要なSubversionのダウンロードとインストール

3.Subversionを使ってWorpdress.orgの公式ディレクトリにアップロード&バージョン管理

4..potファイルから .mo ファイルを作ってプラグインの多言語化(国際化)

-s2memberプラグイン日本語化-.potファイルから.poや.moファイルを作ってWordPressの言葉を変更する方法

s2memberプラグインを日本語化するため、言語ファイル.moを.potから作る

無料・有料会員制サイトを作って月額課金などをするのに役立つプラグイン「s2member」。優秀なプラグインだが全部英語。
これを日本語化していく過程を紹介。


例えばメンバー登録画面はこんな感じ。全部英語。
管理画面の設定も全部英語。

管理画面も登録ページも翻訳の仕方は基本的に同じ工程で大丈夫。
 

.potファイルをダウンロードする

 

テーマの言葉とは違う場所にあり、プラグイン用の翻訳ファイルはプラグインの中に入っている。

s2memberの場合は、wp-content/plugins/s2member/includes/translations にある s2member.pot をダウンロードする。

 

.potファイルから.poを作る

 
まず、poeditを開く。

なお、poeditが無い場合はpoeditのダウンロード、インストール方法、使い方はこちらを参照のこと。

.poがあればそのまま開けるが、s2memberには.poファイルも.moファイルもない。
なので、

「ファイル」→「POTファイルを元に更新します…」をクリック。


.potから.poを作る場合、まず翻訳言語の設定があるので「日本語」を選ぼう。

これでひとまず.poファイルはできた。

 

.poファイルを編集して翻訳していく

 

「編集」→「検索」で変えたい文字や文章を探す。
例えば、 Password と検索して、その下の欄に パスワード と入力すれば、Wordpressでも翻訳後の文字が表示される。

これを利用すれば、「Username」は普通「ユーザー名」と翻訳されるが「くそったれ名」などと表示させることも可能。


例として、適当に何個か日本語にしてみた。

日本語にすると、英語の右に、日本語が表示される。
パスワード、パスワード強度など。

 

.moファイルにして保存

 

普通に保存すればOKだが、保存しようとするとエラーが表示される場合がある。

翻訳に1個の問題が見つかりました。
エラーがある項目はリスト中で赤くマークされています。エラーの詳細は、その項目を選択すると表示されます。
The file was saved safely and compiled into the MO format, but it will probably not work correctly.

(このファイルは安全に保存され、MOファイルに変換されました。しかし正常に動作しない可能性があります。)という感じ。


warning: header field ‘Language-Team’ still has the initial default value.(注意:ヘッダーの’翻訳チーム’がデフォルトの値のままです。)

このエラーが出た場合、リスト中でどこも赤くなっていないはずなので、ヘッダーを修正しなくてはならない。

「カタログ」→「設定」

ここの翻訳チームの部分を適当に修正する。何でもいい。

 

.moファイルをFTPでアップロードし、Wordpressの画面を見てみる

 

アップロード場所は、

potファイルが入っていた場所と同じ。
wp-content/plugins/s2member/includes/translations

自動で保存すると、ファイル名がja_JP.po、ja_JP.moになるがpotファイルの名前が、s2member.potの場合は、s2member-ja.poにしておくこと。でないと、Wordpressの翻訳には反映されない。


こんな感じで文章や言葉を変更することができる。