管理メニューの予約カレンダーから特定日の「表示する」を実行すると、その日の予約品目と予約者情報一覧が表示されます。
予約者の情報は通常、予約人数を括弧内に従えた名前が横並びで表示されます。これは人数の多い予約を考慮し、名前の一覧を表示するようにしているためです。このような予約の一覧はこの他、管理メニューの「予約リスト」で表示することができます。
さてこの一覧表示で、画像のように予約者の連絡先やオプション情報を選択して表示することができます。以下に設定方法を説明します。
フィルターフックで表示の設定情報を戻す
管理画面上でこの指定日の予約一覧画面を表示する前に、表示の情報を予約システムに知らせることができます。予約システムが WordPress のフィルター機能を利用して設定情報を取得しますので、それに合わせて表示したい情報を渡します。この方法はメッセージフィルター機能とほぼ同様です。
フィルター名は「mtssb_admin_calendar_info」です。
表示したい情報として選択できる項目は、予約者の連絡先項目とオプション機能を利用している場合は、オプション定義した項目で、それぞれ選択することができます。
連絡先の項目は次の一覧から選択できます。
- company
会社名 - furigana
氏名フリガナ - email
メールアドレス - tel
電話番号 - postcode
郵便番号 - address
住所 - option
オプション設定の項目で、表示したい項目の選択は次に説明します。 - newuse
新規利用 - note
連絡事項
渡す情報は、選択した情報を配列データにしたものになります。
array('email', 'tel', 'option');
オプションを利用していない場合、またはオプションを表示しない場合は、「option」を指定しないで下さい。
オプションを表示したい場合は、オプション設定で定義したオプション項目のキー名を同様に配列データにして渡します。
array('insurance', 'group');
設定情報の詳細
予約システムに情報を渡す際、表示する情報について以下の項目が配列で渡されます。
- article_id
一覧表示する予約品目ID - adding
追加情報の表示指定を戻す変数(デフォルトはfalse) - float
予約者情報を1行毎表示する指定を戻す変数(デフォルトはtrue) - item
追加表示する連絡先項目の配列を戻す変数 - option
追加表示するオプション項目の配列を戻す変数 - separator
項目の区切子を戻す変数(デフォルトは半角のカンマ文字)
特定の予約品目だけ追加情報を表示したいなど表示を分けたい場合、渡されたarticle_idをチェックして判定します。
以下に予約品目IDが5のときだけ、連絡先情報の email、tel と オプション設定した insurance、group を表示するサンプルプログラムを示します。プログラムはご利用のテーマの「functions.php」に組み込むと良いでしょう。
function mts_admin_calendar_info($info) { if ($info['article_id'] == 5) { $info['adding'] = true; $info['float'] = false; $info['item'] = array('email', 'tel', 'option'); $info['option'] = array('insurance', 'group'); } return $info; } add_filter('mtssb_admin_calendar_info', 'mts_admin_calendar_info');