情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
- 継続的に時間枠で予約を受け付けるサンプル
- イベントアーカイブをカレンダーで表示するサンプル
- イベントアーカイブを一覧で表示するサンプル
- ランダムなイベントをカレンダーで予約受付のサンプル
- Calculated Fields Form で確認画面付きメールフォーム
ワードプレスのメールフォーム関連で寄せられる要望と解決策についてまとめていきます。WP MW Form は開発終了となっているため、メールフォーム・プラグインはContact Form 7 とします。
確認画面については Calculated Fields Form の場合も追記しています。
確認画面 Contact Form 7 の場合
Contact Form 7 Multi-Step Forms は確認ページと完了ページを作成するのでデザイン・表示は自由が効きますが、無料版は送信容量に制限があります。
Confirm Plus Contact Form 7 はページ遷移せず、表示はテーブルレイアウトのみ、確認画面での表示・非表示などはフォーム作成時のタグに決まりがあります。
プラグイン無しでjQuery で表示する場合は表示内容・HTMLに制限はありません。
- Contact Form 7 jQUery(モーダルウィンドウ/ポップアップ)確認画面実装
- Confirm Plus Contact Form 7
- Contact Form 7 Multi-Step Forms 入力文字容量
確認画面 Calculated Fields Form の場合
計算機能付きのCalculated Fields Form はページ分割ができるので、jQuery を利用して2ページ目を確認ページにすることが可能です。
*自動返信・reCAPTCHA機能は有料版が必要。
フォームのフィールドに値を入れる
Contact Form 7 - Dynamic Text Extension を利用します。
カスタムフィールド値の場合:"CF7_get_custom_field key='カスタムフィールドのキー'"、キーは別途登録が必要
投稿タイトルの場合:"CF7_get_post_var key='title'"
パラメータの場合:"CF7_GET key='パラメータ名'"
ターム名:"CF7_get_taxonomy taxonomy='タクソノミー名'"
自作ショートコード: "ショートコード名"、Contact Form 7 で使用するための関数はなしでも使える
編集不可にする場合は readonly を入れる。
*その他必要な項目を関数などでカスタムフィールドに保存する場合もあります。
Contact Form 7 - Dynamic Text Extension でカバーできない場合など、jQuery で値を入れることもあります。
日時・定員での締め切り
カスタムフィールドで締め切り日時・定員数を設定し、テーマ側で条件分岐をつけます。
定員で締め切る場合は、送信時にカスタムフィールド値を更新する関数を作成します。
予約フォームの機能
イベントの予約などはイベントごとに日程・定員などをカスタムフィールドで設定し、送信内容で値を更新、定員や期日に達したらフォームを締め切る。
時間枠ごとに定員のある予約受付は、日程表を作る関数とメールフォームの送信内容でカスタムフィールドを更新する関数で管理します。
リマインドメール
Contact Form 7 の送信時にMail Poet に登録するアドオンを利用して、Mail Poet から一斉に送信する。
あるいは、Advanced Custom Fields とwp_mail関数で投稿の更新時にメール送信も可能。
投稿データの読み込み
例えば商品を選ぶ、など、投稿一覧を読み込む、またはフォームを表示しているページのデータで表示内容を変えるなど。
wpcf7_add_form_tag でショートコードを作成します。