Simple Membership form builder 日本語化
Simple Membershipプラグインで会員サイトを作成する際に利用するアドオン「form builder」を日本語化して利用します。
デフォルトでの一見日本語化されているように見えますが、エラーメッセージが日本語化されていなんため、カスタマイズが必要です。
本記事ではこのSimple Membershipアドオン「form builder」のカスタマイズ方法をご紹介いたします。
やりたいこと
会員登録のフォームでテストしてみると分かるのですが、エラーメッセージが日本語化されていません。
これらの日本語化を行います。
苦労したこと
form builderプラグインのディレクトリを除くと、languagesフォルダがあります。
ここにpotファイルがありますので、このファイルを修正すればいいのかと思いますが
これが間違いです
このファイルをいくら修正しても日本語化されないので要注意
これとは別のファイルを修正する必要があります。
ただ、このpotファイルは後で使うので、場所は覚えておいてください。
form builder日本語化
jsファイルの日本語化
jsファイルのメッセージを定義するファイルを修正します。
これは、なぜか日本語だけ言語ファイル定義のファイル名称がおかしいからです。
でも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 "会員登録済みです。"