多言語対応

説明はPHPプログラムを含みます。関連する操作はPHPプログラムを理解する技術者が対象となります。

本システムは管理画面以外のフロントエンドにおいて、カレンダー、予約フォーム、メールで多言語表記するための機能を提供しています。海外から予約を受け付ける場合、この機能を利用して対象とする居住国の言語、または英語で表記することができます。

表記する内容(文)の設定は、以下のファイルを利用します。

mts-acb-booking/src/MTSAcbBooking/DataResource.php

利用言語の指定や出力テキストの設定は、このファイルを編集して下さい。

ただしメールについては、当該言語が入力可能なPCなど利用してメールテンプレートを登録して下さい。なおメールのサンプル文を登録する特別なファイルがありますが、詳細は別途説明します。

利用言語の指定

言語の指定は前述のファイル内に、デフォルトとして「日本語」と「英語」が設定されています。多言語を利用したい場合、言語コードと言語名を配列に追加して下さい。

// 言語(jaは必須)
public static $language = array(
    'ja' => '日本語',
    'en' => '英語',
);

設定方法

予約処理は、予約カレンダーから宿泊日の客室を選択する、ことから始まります。言語の指定はスタート地点となるカレンダー表示のショートコードへ、以下のように言語コードのパラメータを追加して下さい。

lang=”en”

言語指定された予約カレンダーは、指定された言語で表示されるようになります。また、当該カレンダーから客室が選択されるとセッションデータへ表記言語が記録され、以降の予約フォーム処理やメール処理でその表記言語が参照されます。

出力テキストの設定

言語別のテキストデータは、上記ファイル内の各所に配列を利用して設定されています。次の例(プログラム)は、その中の1つです。

// 予約申込検索フォーム
public static $aFind = array(
    'FINDING_TITLE' => array(
        'ja' => '予約検索',
        'en' => 'Find Reservation',
    ),
    'FINDING_RESERVE_ID' => array(
        'ja' => '予約ID',
        'en' => 'Reserve ID',
    ),
    'FINDING_EMAIL' => array(
        'ja' => 'E-Mailアドレス',
        'en' => 'E-Mail Address',
    ),
);

例えば予約検索を処理するプログラムはタイトルを表示する際、「FINDING_TITLE」と「言語コード」をキーとしてメッセージを取得し、出力します。

表記言語を追加する場合は、ファイル内のそれぞれの配列へテキストを追加するようにして下さい。

その他テキストデータは「DataResource.php」ファイル以外に、客室データ、宿泊プランデータ、スケジュールデータ、メール設定データの登録編集画面において、入力項目が自動で用意されます。データ登録する際は、利用する言語のテキストを設定するようにして下さい。

 

お願いになりますが、英語(en)のテキストは英語知識が浅い当方が設定しました。おかしな表現があれば適宜修正して利用して下さい。