ScheduleField の概要
年月を選ぶとその月の日数分の行が自動生成され、日ごとに任意の項目を入力できるコンテンツフィールドを追加します。
ScheduleField をインストールすると、コンテンツタイプのフィールドとして「スケジュール」を選べるようになります。コンテンツデータの編集画面では、選択した年月の日数分の行が自動生成され、日付と曜日つきの表として入力できます。
入力画面の構成
[ 2026 ] [ 年を変更 ]
[ 7月 ▼ ] [ データを表示 ]
┌────────┬──────────┬──────────┬──────────┐
│ 日付 │ 営業 │ 開店 │ 備考 │
├────────┼──────────┼──────────┼──────────┤
│ 1 (水) │ [○ ▼] │ [10:00] │ [ ] │
│ 2 (木) │ [○ ▼] │ [10:00] │ [ ] │
│ 3 (金) │ [× ▼] │ [ ] │ [定休日] │
│ ... │ ... │ ... │ ... │
│ 31 (金)│ [○ ▼] │ [10:00] │ [ ] │
└────────┴──────────┴──────────┴──────────┘
「日付」列は自動で作られ、そのほかの列はコンテンツタイプ側で定義した入力項目です。
主な特徴
日付の行は自動生成される
月を選ぶと、その月の日数(28〜31 日)分の行が自動的に作られます。日付と曜日は自動計算されるため、入力する必要はありません。行を任意に増やしたり減らしたりすることはできません。
列(入力項目)は自由に定義できる
コンテンツタイプ編集画面の「入力項目」で、列ごとにラベル・ハンドル・入力タイプ・選択肢・初期値を設定します。列の数に制限はありません。
12 種類の入力タイプ
テキスト / テキスト(複数行) / ドロップダウン / チェックボックス / ラジオボタン / 数値 / 日付 / 時刻 / 色 / Email / URL / 電話番号 から選べます。
データは JSON で保存される
入力内容は JSON 形式の文字列としてコンテンツフィールドに保存されます。テンプレートからは MT タグでループ出力するか、JavaScript で描画できます。
想定する使い方
- 店舗やサービスの営業日・定休日カレンダー
- 宿泊施設や会議室の空室・空席状況と料金
- スタッフの勤怠表・シフト表
- 月間のイベント予定表
- 日ごとの当番表・担当者表
向いていないケース
ScheduleField は「1 つの年月」を 1 フィールドで扱い、行数は日付に固定されます。そのため、次のようなデータには向きません。
- 日付に紐づかない任意の行数の表(商品スペック表、FAQ、連絡先一覧など)
- 複数の月をまとめて 1 つのフィールドで扱いたい場合
任意の行数の表を入力したい場合は、MTAppjQuery の mtapp.multiField() をご検討ください。複数の月を扱う場合は、月ごとにコンテンツデータを分ける運用をおすすめします。