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

情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。

ACFとMW Form で予約管理 その3 の続き、実際に動かしてみた設定の覚え書き。

1マス1時間、コースは1時間と2時間、
前のマスに2時間の予約が入っているときは予約不可、次のマスに予約が入っているときは1時間のみ受付、最後のマスは1時間のみ受付、の想定。
リピーターは日付と時間の入れ子。

内側のリピーターの前に $rows = get_sub_field(‘hours’); $rowcount = count(get_sub_field(‘hours’)); if(have_rows(~
リピーターの行数の取得はループの前に。while の前に $row=0; でカウント開始。
$rows[$row-1][‘course’] == ‘courseの値’、$rows[$row+1][‘course’] == ‘courseの値’ で条件分岐。最後のマスは$row+1 != $rowcount で判定。$rows は0から始まるので1プラス。

MW Form で投稿IDで取得できない値はリンクにパラメータを付けて、jQuery で取得してフィールドに入れる。

送信内容から投稿ID・日付・時間・コース、その他を取得してリピーターの該当する行のフィールドをアップデート。MW Form 予約数を保存参照。
*予約できる時間・コースは表示側で前後の行を参照するので、更新するのは該当の行のみ。

その他のAdvanced Custom Fields に関する記事一覧

Advanced Custom Fields に関する記事一覧ページへ