WordPressのフォームプラグイン「Trsut Form」で、管理者宛のメールアドレスを記事の投稿者に変更したいと思い、プラグイン作者の @horikeさんに相談したところ、
フックをつけてバージョンアップしてくれました!ありがとうございますー!
という事で、そのフックを使って管理者宛のメールアドレスを変更する方法を説明したいと思います。
基本的な設定は、functions.php に下記コードを追記します。
function my_trust_form_admin_mail_to( $to, $form_id ) {
$to = "test@example.com"; // ここにメールアドレス
$form_id = "100"; // ここにTrsut FormのID
return $to;
}
add_filter( 'trust_form_admin_mail_to', 'my_trust_form_admin_mail_to', 10, 2 );
$form_id には、Trust Form のID を入れるとそのIDにのみ動作させる事が可能です。
特にID指定させないのであれば、この一行は削除してください。
ちなみに、
if ( $form_id == 100 ) {
}
のようにすれば条件分岐もできます!
で、ここからが本題なのですが、
今回やりたかった事は、記事を書いた投稿者へメールを送信したいので、
functions.php には下記のように記述すれば動作します。
function my_trust_form_admin_mail_to( $to, $form_id ) {
global $post;
$author = get_userdata($post->post_author);
$mailto = $author->user_email;
$to = $mailto;
$form_id = "100";
return $to;
}
add_filter( 'trust_form_admin_mail_to', 'my_trust_form_admin_mail_to', 10, 2 );
これで投稿者のメールアドレスに自動設定されるようになります。
Trust Formはどんどん便利になりますね!
【動作環境】 WordPress 3.6.1
【プラグイン】 Trsut Form 1.8.2