「Contact Form 7」にhiddenでログイン情報を送信する

WordPress(ワードプレス)のプラグイン「Contact Form 7」で作成したフォールメール・アンケートフォームにログイン者の情報(ユーザー名やメールアドレス等)を「input type=”hidden”」としてユーザーに見せずにメールで受け渡す方法です。

1.「Contact Form 7 module」をインストール

まずは、【Contact Form 7 module】をダウンロード。

これは、「Contact Form 7」でhiddenが使えるようになるプラグインです。

ダウンロードが完了したらファイルを解凍し、中身を [ plugins/contact-form-7/modules ] 内に追加でアップロードして下さい。

タグの作成にhiddenを追加

成功すると、フォーム編集画面のタグの作成に「Hidden fileld」が追加されています。

しかし、このタグ作成を使ったhiddenのコードでは、まだログイン情報をvalue値に入れることが出来ません。

2.「Functions.php」を編集

次に、 /plugins/contact-form-7/includes/functions.php を開いて、下記のソースを追記します。

場所は一番下でOKですが、PHPコード開始と終了のコード内に追記して下さい。

<?php
——— ここに追記———-
?>

以下、ソース。

functionsにプログラムを追記

function my_form_tag_filter($tag){
if ( ! is_array( $tag ) )
return $tag;

$name = $tag['name'];

if(is_user_logged_in()){
global $current_user;
get_currentuserinfo();

if($name == 'hidden-login')
$tag['values'] = (array) $current_user->user_login;
else if($name == 'hidden-email')
$tag['values'] = (array) $current_user->user_email;
else if($name == 'hidden-first_name')
$tag['values'] = (array) $current_user->user_firstname;
else if($name == 'hidden-last_name')
$tag['values'] = (array) $current_user->user_lastname;
else if($name == 'hidden-user_id')
$tag['values'] = (array) $current_user->ID;
else if($name == 'hidden-display_name')
$tag['values'] = (array) $current_user->display_name;
}
return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);

■変数の説明
hidden-login(user_login → ユーザーのログイン名
hidden-email(user_email) → ユーザーのメールアドレス
hidden-first_name(user_firstname) → ユーザーの名前
hidden-last_name(user_lastname) → ユーザーの姓
hidden-user_id(user_id) → ユーザーID
hidden-display_name(user_display_name) → ユーザーの表示名

3.フォーム画面にhiddenコードを適用させる

WordPress(ワードプレス)にログインして、「Contact Form 7」の編集画面にて、下記のように入力すればメールでログインしたユーザー情報がメールに記載されるようになります。

フォーム欄にhiddenを追記

[hidden hidden-login]<br>
[hidden hidden-email]<br>
[hidden hidden-first_name]<br>
[hidden hidden-last_name]<br>

メッセージ本文欄にhiddenを追記

ログイン名 [hidden-login]
メールアドレス [hidden-email]
名前 [hidden-first_name] [hidden-last_name]

以上で完了です、お疲れ様でした。

この記事のURLをコピー

関連情報

メールアドレスは公開されませんのでご安心ください。また、* が付いている欄は必須項目となります。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。