[WP]WordPressでお問い合わせフォームへ値を引き継ぐ方法(その2)

以前投稿した[WP]Wordpressでお問い合わせフォームへ値を引き継ぐ方法では、contact form7を使ってフォームに値を引き継ぐ方法を試してみましたが、MW WP Formを使う機会の方が多いので、今度はMW WP Formでの引き継ぎ方法をメモしておきます。

ページタイトルを引き継ぐ方法

どのページからお問い合わせフォームへ来たかお問い合わせフォームに記載したい場合に、ページタイトルを引き継ぐことも多いかと思います。
実際、これが一番手間が少なくて簡単かな。
手順は下記。

(1)MW WP Formでフォームを作成

MW WP Formでフォームを作成。その際ページタイトルを引き継ぎたい場所に{post_title}を入れる。

画面右下のほうにある「URL引数を有効にする」にチェックを入れる。

「フォーム識別子」をコピーしたら「公開」ボタンをクリック。

 

(2)お問い合わせフォームのページ作成

固定ページなどで新規ぺージを作成。
先ほどコピーした「フォーム識別子」を投稿部分に貼り付けし、お問い合わせフォームのページを作成する。

 

(3)お問い合わせフォームへの引き継ぎタグ挿入

これで、お問い合わせフォーム作成とページタイトルを引き継ぐ準備は完了したが、実際にページタイトルを引き継ぐには、"どのページ" のタイトルかを受け渡さないといけない。
ようは、ページIDをお問い合わせフォームに受け渡せばOK。

例えば値を引き継ぐページが商品ページだったとして、商品ページは数ページだけしかなくページの追加もないというのなら、各商品ページの投稿欄に


<a href="お問い合わせフォームURL/?post_id=5">お問い合わせ</a>

(このタグを記載する商品ページのIDが5の場合)

と、お問い合わせフォームへのリンクを記載するだけで良い。

ただ、商品ぺージが数ぺージで商品ぺージの追加もないなどということは稀かと思うので、そうでない場合は商品ページ用のテンプレートを作成し、ぺージ追加されても自動で表示されるようにする方が良いかと思う。
で、商品ぺージ用テンプレートphpに書く場合は、


<a href="<?php echo esc_url(home_url('/')); ?>contact/?post_id=<?php echo $post->ID; ?>">お問い合わせ</a>

と書いておくと、ぺージIDを自動で判別してくれる。

最後に、ぺージプレビューをしてお問い合わせフォームへ値が引き継がれているか確認する。

 
なお、お問い合わせフォームでは、{post_title}をmwform_textやmwform_textareaなどへ表示させると、お問い合わせしようとしていた時に変更できてしまう。(ぺージタイトルが引き継がれても、入力者サイドで好きな文字に変更できる)
それでは困るという場合、jsやcssで変更できない(カーソルが入らない)ようにするか、そもそも変更できないradioに反映させるかすると良いかと。

ただ、お問い合わせフォームを直接開いた場合、{post_title}が引き継がれずに空白で表示されるので、変更できないようにしていた場合何も入力できなくなるので注意。

 

その他の値を引き継ぐ方法

ぺージタイトル以外をお問い合わせフォームへ引き継ぐ場合は、詳細ぺージを作成する際に「表示オプション」内にある「カスタムフィールド」を使用して名前を設定すると良いかと。

お問い合わせフォームの表示させたい場所に、{設定した名前}を記載すれば値が引き継がれる模様。

いろいろ試してみると、利用価値が広がりますね。

category - works
tags - Tag : ,

ページトップへ

Copyright © Ten blog All Rights Reserved.