ContactForm7でひとつ前のページ(リファラー)のタイトルを取得する方法


0831

ContactForm7、便利ですよね。

今日は、ひとつ前のページのタイトルをContactForm7に渡す方法です。

例えば、商品名やサービス名がそれぞれのページにあって、ページタイトルになっている。

それらのページには問い合わせボタンがあって、問い合わせページから問い合わせてもらう。

その時に、どの商品やサービスのページから来たかが簡単に分かるようになりますし、どの商品やサービスの問い合わせかも分かるようになります。

よくセレクトボックスで商品やサービスを選択するようになっていたりしますが、それが必要なくなるわけです。

ちなみに、この方法はContactForm7の公式サイトにもちょっと違う形ですが書いてあります。

文脈からデフォルト値を取得する

では早速やってみましょう。

まず、page.phpやsidebar.php、あるいはsingle.phpでも何でもよいのですが、ページのテンプレート内に問い合わせページ行きのボタンがあるとします。

問い合わせページのURLがhttp://example.com/contact/であれば、

[html]<a href="http://example.com/contact/">問い合わせページへ</a>[/html]

となりますね。

ここで、リンク先にページタイトルをふって、パラメーターを渡します。

[php]<a href="http://example.com/contact/?title=<?php echo get_the_title();?>">問い合わせページへ</a>[/php]

次に、titleで渡される値をContactForm7側で取得します。

こんなフォームタグにします。

[[text title default:get]]

これだけで、渡されたページタイトルを取得しテキストボックスに表示することができます。


カテゴリ:
タグ:,