WordPressでフォームと言ったらContact Form 7と、今回ご紹介するMW WP Formが使い易いプラグインだと思います。
説明するより実際に使ってみた方が早いと思いますのでフォームを設置するところまでは省き、今回はプラグイン製作者様のサイトで「MW WP Form マニュアル 投稿データ取得」でもさらりと掲載されている投稿データの取得について、サンプルをご紹介します。
サンプルではより実践的に、カスタム投稿「商品情報」の全商品ページにお問い合わせフォームを作成します。よくある「この商品へのお問い合わせ」になります。
プラグインでフォーム作成
まずはMW WP Formで通常通りフォームを作成します。
次に商品情報(投稿)のデータを取得したいので、手始めに商品名(タイトル)を取得してみます。
{post_title}
これだけです。
自動返信メールや管理者宛メールにデータを渡したい場合は、inputのhiddenなどを使います。
[mwform_hidden name="商品名" value="{post_title}" echo="true"]
/* echo="true"はhiddenデータを表示します */
フォーム内記述したら、自動返信メールや管理者宛メールの本文内にも忘れず記述しましょう。
例:商品名 {商品名}
取得できる投稿データはタイトルの他、カスタムフィールドの値も取得できます。
single.php
商品ページのフォームを表示したい場所へコードを記述します。
使う関数はdo_shortcode()のみです。
/* フォームを出力 */
echo do_shortcode( '[mwform_formkey key="XXX"]' );
これで全商品ページにフォームを設置し、どの商品ページからお問い合わせがあったのか、などがわかるようになります。