予約カレンダーひとまず完成

必要なものはAdvanced Custom Fields とMW Form、グーグルのカレンダーAPI 定休日は曜日でカレンダー側で設定、または月ごとに投稿で設定。 営業日の予約受付パターンが決まっていれば、カスタムフィールド側で設定するため、1月1投稿を作成するのみでOK。 1枠1予約のみ、定員あり、複数コースなど想定。 カレンダーの枠内には予約可能なコー…

予約カレンダー試作

グーグルのカレンダーAPIとACFを組み合わせて、予約カレンダーが作れるのではないかと前から考えていたのだが、やっと、テストしてみた。 カレンダー側: 投稿は1月1投稿でタイトルかカスタムフィールド値から年月を取得。 曜日ごと、祝日などの設定が可能なので、今回は土日祝日が定休とした。 カスタムフィールド(ACF): 1月分1~31をグループフィールドで作成し…

MW Form 管理者宛メールの変更

登録フォームに入力された内容をメールで送信せず、管理画面からダウンロードしたいということで、テーマ関数で管理者宛のメールを変更。 *データベースに保存する項目は管理者宛のメール設定と連動しているので、設定には入力内容を含む必要がある。 function mw_admin_mail( $Mail, $values, $Data ) { $Mail->bo…

MWフォーム プルダウンの連動

エリアと店舗のプルダウンを連動させる。エリアはタクソノミーで店舗はそれに属する店舗。選択は必須。 フォームのショートコードは children=”,” post_raw=”true” として必要なidを入れる。 functionsの関数でそれぞれ動的に選択肢を入れる。必須を有効にするために1行目に$childr…

ACFとMW Form で予約管理 その4

イベントの投稿に予約数・予約可能数等のフィールドをつくり、予約フォームからの送信時に数字をアップデートすることは可能で、個別ページや一覧でその数字を表示することも出来るが、イベントカレンダー対策として投稿タイトルにも予約可否や残席数を表示したい。 タイトル用のイベント名フィールドを作成し、メール送信時に、それと残席数を合わせてタイトルをアップデートする。 $…

予約管理・複数コース実装編

ACFとMW Form で予約管理 その3 の続き、実際に動かしてみた設定の覚え書き。 1マス1時間、コースは1時間と2時間、 前のマスに2時間の予約が入っているときは予約不可、次のマスに予約が入っているときは1時間のみ受付、最後のマスは1時間のみ受付、の想定。 リピーターは日付と時間の入れ子。 内側のリピーターの前に $rows = get_sub_fie…

ACFとMW Form で予約管理 その3

ACFとMW Form で予約管理、ACFとMW Form で予約管理 その2の続き。 予約のすべてが1時間1マスでなく、予約コースによって所要時間が1時間と2時間がある場合、投稿の更新の方は時間に1を足すなどで更新する行を判断できると思うが、例えば11時から予約が入っている場合は10時に予約できるのは1時間のみ、という処理をどうするか。 $rows = g…