AnotherCustomFieldsプラグイン(多言語対応)

MTOS 5.1にカスタムフィールド風の機能を追加できるAnotherCustomFieldsプラグインで、多言語対応を行いました。
ユーザーの言語の設定に応じて、フィールドのラベル等を適切な言語で表示することができます。

1.プラグインのインストール

プラグインは以下からダウンロードすることができます。

AnotherCustomFields_1_23.zip

ダウンロードしたZipファイルを解凍すると、「plugins」と「mt-static」の2つのフォルダができます。
これらのフォルダを、Movable Typeのディレクトリにアップロードします。

2.日本語/英語に対応する際のconfig.yamlの書き方

フィールドのラベル等を日本語と英語に対応させたい場合、config.yamlファイルの「label:」等の行には、英語でラベルを書きます。
そして、config.yamlファイルの最後に、以下のような部分を追加します。

l10n_lexicon:
  ja:
    英語のラベル: 日本語のラベル
    英語のラベル: 日本語のラベル
    ...

例えば、サブタイトルのフィールドを追加し、以下のように表示したいとします。

項目日本語英語
ラベルサブタイトルSubtitle
ヒントサブタイトルを入力してください。Input subtitle.

この場合、config.yamlファイル(のフィールド定義の部分)と、「l10n_lexicon」の部分を、以下のように書きます。

object_types:
  entry:
    subtitle:
      type: string
      size: 255
      revisioned: 1
      acf:
        type: text
        label: Subtitle
        hint: Input subtitle.
        tag: EntrySubtitle
l10n_lexicon:
  ja:
    Subtitle: サブタイトル
    Input subtitle.: サブタイトルを入力してください。

フィールドを追加した後、ユーザーの設定で言語を日本語にすると、ラベル等が日本語で表示されます。

日本語でラベル等が表示される

また、ユーザーの設定を英語に変えると、ラベル等も英語になります。

ラベルが英語で表示される

3.日本語/英語以外にも対応する

Movable Typeは、日本語/英語の他に、フランス語/ドイツ語/スペイン語/オランダ語にも対応しています。
これらの言語にも対応させる場合、l10n_lexiconの部分を以下のように書きます。

l10n_lexicon:
  ja:
    英語のラベル: 日本語のラベル
    英語のラベル: 日本語のラベル
    ...
  fr:
    英語のラベル: フランス語のラベル
    英語のラベル: フランス語のラベル
    ...
  de:
    英語のラベル: ドイツ語のラベル
    英語のラベル: ドイツ語のラベル
    ...
  es:
    英語のラベル: スペイン語のラベル
    英語のラベル: スペイン語のラベル
    ...
  nl:
    英語のラベル: オランダ語のラベル
    英語のラベル: オランダ語のラベル
    ...

4.CustomFieldsListingプラグインのアップデート

ラベルを多言語対応にする場合、CustomFieldsListingプラグインもアップデートしてください。

CustomFieldsListing_1_20.zip

ダウンロードしたZipファイルを解凍すると、「plugins」と「mt-static」の2つのフォルダができます。
これらのフォルダを、Movable Typeのディレクトリにアップロードします。