今まで機会が無かったんですが、最近
必要になって改めて便利だったので今更
ながらご紹介です。WordPressでコンタ
クトフォームと言えば、Contact Form 7
が定番になっていますが、このCF7にある
機能に「特別なメールタグ」っていうの
があります。

フォーラムによく顔を出すような方はご存知の方も多いですが、ググってみると案外紹介されていなかったので普及活動してみます。

Contact Form 7


まずはContact Form 7のご紹介。WPユーザーなら大抵はご存知ですよね。柔軟性と操作性に優れたコンタクトフォーム用プラグイン。日本製ですが、世界中で愛用されています。

CF7は管理画面内でフォームを作成し、ショートコードで実装します。そのフォーム作成もショートコードを発行する形ですので、HTMLの知識は無くとも作成する事が出来ますが、PHPであるテンプレートタグなどは直接使用できません。

ただ、場合によっては、記事ごとにフォームを設置して、その記事の情報を取得(例えばタイトルやURL)したり、IPアドレス、時間等を所得したい、というケースもあるかと思います。

そういった場合に便利なのが「特別なメールタグ」です。

「特別なメールタグ」

特別なメールタグとは、CF7における送信されるメールの作成部分で使用できるタグの事です。以下の部分ですね。

実際に送られてくるメッセージの雛形部分に使用できるのが「特別なメールタグ」です。例えばページ毎に設置したい、みたいな場合。イベントの告知記事とかフィードバックとか用途は多数ありますよね。

そういう場合に、「設置している投稿のパーマリンク」や、タイトルなどが欲しい時でも、ユーザーに入力させる必要も無く、特別なコードを書く必要も無く、フォームが設置されているURLやタイトルを取得出来ます。

特殊なメールタグ一覧

特殊なメールタグは以下が揃っています。

  • [_remote_ip] 送信者のIPアドレス
  • [_url] 設置されている記事や投稿のURL
  • [_date] 送信された日付
  • [_time] 送信された時刻
  • [_post_id] 設置されている記事や投稿のID
  • [_post_name] 設置されている記事や投稿の名前(スラッグ)
  • [_post_title] 設置されている記事や投稿のタイトル
  • [_post_url] 設置されている記事や投稿のパーマリンク
  • [_post_author] 設置されている記事や投稿の作成者の名前
  • [_post_author_email] 設置されている記事や投稿の作成者のメールアドレス

CF7をテンプレートファイル内で使用する

尚、CF7はショートコードを発行してくれますので、テンプレートタグにも利用できます。

ショートコードをテンプレートファイル内で使用するにはdo_shortcode関数を利用します。

<?php echo do_shortcode( '[contact-form 1 "Contact form 1"]' ); ?>

ただし、先ほどの[_post~]タイプの特殊なメールタグを含んでいる場合、ループ外では取得できないようですのでサイドバーやフッターで利用できない点に注意してください。

人気のプラグインなので、知っておくとどこかで役に立つかもしれないと思ってご紹介してみました。以上、CF7の特別なメールタグのご紹介でした。