Simple Membership form builder 日本語化

Simple Membershipプラグインで会員サイトを作成する際に利用するアドオン「form builder」を日本語化して利用します。

デフォルトでの一見日本語化されているように見えますが、エラーメッセージが日本語化されていなんため、カスタマイズが必要です。

本記事ではこのSimple Membershipアドオン「form builder」のカスタマイズ方法をご紹介いたします。

やりたいこと

会員登録のフォームでテストしてみると分かるのですが、エラーメッセージが日本語化されていません。

会員登録画面での必須入力エラー
必須入力
メールアドレス重複

これらの日本語化を行います。

苦労したこと

form builderプラグインのディレクトリを除くと、languagesフォルダがあります。

ここにpotファイルがありますので、このファイルを修正すればいいのかと思いますが

これが間違いです

このファイルをいくら修正しても日本語化されないので要注意

これとは別のファイルを修正する必要があります。

ただ、このpotファイルは後で使うので、場所は覚えておいてください。

form builder日本語化

jsファイルの日本語化

jsファイルのメッセージを定義するファイルを修正します。

これは、なぜか日本語だけ言語ファイル定義のファイル名称がおかしいからです。

ja_JPではなくjaで定義されている

でもphp上はja_JPで定義を呼ぼうとしているので、正しく参照ができていません。

修正箇所は下記です。

		$translations = array(
			'cs_CS', // Czech
			'de_DE', // German
			'el_GR', // Greek
			'en_US', // English (US)
			'en_AU', // English (AU)
			'en_GB', // English (GB)
			'es_ES', // Spanish
			'fr_FR', // French
			'he_IL', // Hebrew
			'hu_HU', // Hungarian
			'id_ID', // Indonseian
			'it_IT', // Italian
			'ja', // Japanese
			'ko_KR', // Korean
			'nl_NL', // Dutch
			'pl_PL', // Polish
			'pt_BR', // Portuguese (Brazilian)
			'pt_PT', // Portuguese (European)
			'ro_RO', // Romanian
			'ru_RU', // Russian
			'sv_SE', // Swedish
			'tr_TR', // Turkish
			'zh_CN', // Chinese
			'zh_TW', // Chinese (Taiwan)
		);

日本語の部分をjaに変更します。

これにより、jsでのエラーメッセージが正しく日本語されます。

エラーメッセージの日本語化

次に苦労したのがこちら。

どうがんばってもAlready taken.が日本語化されない。

原因

メッセージが定義されていないから。

定義するのは、

swpm-form-builderのディレクトリ内ではなく

simple-membershipの言語ファイル

/wp-content/languages/plugins/simple-membership-ja.po

このファイルに定義する日本語を記載していきます。

記載するべきメッセージはswpm-form-builderのディレクトrにあったファイルを参考に必要な情報を追加します。

wp-content/plugins/swpm-form-builder/languages/swpm-form-builder.pot

追加したメッセージはこちら

#: swpm-form-builder/classes/class.swpm-fb-form.php:254
msgid " Password does not match"
msgstr "入力されたパスワードが一致しません。"

#: swpm-form-builder/classes/class.swpm-fb-form.php:274
#: swpm-form-builder/classes/class.swpm-fb-form.php:388
msgid "Already taken."
msgstr " 既に利用されています。"

msgid " not a valid phone number"
msgstr " 有効な電話番号ではありません。"

#: swpm-form-builder/classes/class.swpm-fb-form-custom.php:193
msgid "  not a valid url"
msgstr " 有効なURLではありません。"

#: swpm-form-builder/classes/class.swpm-fb-form-custom.php:207
#: swpm-form-builder/classes/class.swpm-fb-form-custom.php:290
msgid " must be a valid number"
msgstr " 有効な電話番号を入力してください。"

#: swpm-form-builder/classes/class.swpm-fb-form.php:265
msgid " Field has invalid character"
msgstr " 正しく入力してください。"

#: swpm-form-builder/classes/class.swpm-fb-form.php:377
msgid "Invalid email."
msgstr " 正しいメールアドレスを入力してください。"

#: swpm-form-builder/classes/class.swpm-fb-forms-list.php:66
msgid "Edit"
msgstr "編集"

msgid "You are already logged in. You don't need to create another account. So the registration form is hidden."
msgstr "会員登録済みです。"

コメントを残す