予約カレンダー試作

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

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…

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

ACFとMW Form で予約管理 では、予約状況の個別ページ(1月分)から予約可のリンクに年月日と投稿IDをもたせて予約フォームから送信・投稿データをアップデート、という仕組みだったが、予約状況の確認からフォームの送信までを1ページで完結する方法を考えた。 予約状況の投稿を呼び出して、予約可の日時を選択する部分をどうやってMW Form に入れるかが問題だ…

MW Form 予約数を保存 その2

*2024.3追記:MW Form は開発終了となっています。 MW Form 予約数を保存 の関数はフォームごとに書かないといけないので、これを、フォーム追加時にも関数を追加しなくていい方法はないかと、ずっと考えていたが、やっと思いついた。 フォームの入力項目は違っても、保存する項目は同じという想定で。 1.投稿にフォームのキー(ID)を保存するフィールド…

ACFとMW Form で予約管理

前回の投稿の続き。 フォームの送信時に特定のフィールドをアップデートする機能を使えば、簡単な予約管理はできるかも、と考えてみた。 1日1リピーター。時間帯部分はデフォルト値を設定して入力作業を省略。氏名以下は必要に応じて追加。 予約にチェックが入っていなければ予約フォームにリンク。パラメータで日付と時間を送る。送信完了時に、時間が一致する行のチェックボックス…

メールフォーム送信後に 予約数を保存

*2024.3追記:MW Form は開発終了となっています。 MW Form で予約フォームを設置しているサイトで予約が上限に達したときに自動で受付終了できないかと言う話。 フォームを設置したページに予約可能数と予約受付数のフィールドを作成、 フォームの予約数はナンバーフィールドを利用して、上限に予約可能数のフィールドの値を入れる、 送信完了時にそれぞれを…