WordPressメール送信機能の実装解説
今回は、WordPressのwp_mail()関数を用いて、特定のイベントでメール通知を行う実装について詳しく解説します。この機能は、管理画面での操作通知や状況確認に利用でき、ユーザーの操作をトリガーとして管理者に情報を伝えるのに便利です。
コードの概要
以下は、ユーザーが何か操作をした場合に、管理者へ通知を送る例です。WordPressのwp_mail()関数を利用しています。
PHP
1function test($old_name, $new_name) {
2 $current_user = wp_get_current_user();// ユーザー名の取得
3 $user_name = $current_user->display_name; // ログインしているユーザー情報を取得する
4
5 $to = 'ここにメールアドレスを入れる';
6 \\$subject = "件名{\\$user_name}";
7 \\$message = "メッセージを入れる\\n\\n" . \\$user_name . "メッセージ2つ目" . $user_name . "テストテスト";
8
9 $headers = array('Content-Type: text/plain; charset=UTF-8');
10
11 wp_mail($to, $subject, $message, $headers);
12}
詳細な解説
1. ユーザー情報の取得
PHP
1$current_user = wp_get_current_user();
2$user_name = $current_user->display_name;
- wp_get_current_user():現在ログイン中のユーザー情報を取得します。
- この情報から、ユーザーの表示名を取得し、件名やメッセージに活用しています。
参考にさせて頂いた記事
2. メールの基本設定
PHP
1$to = 'ここにメールアドレスを記載する';
2\\$subject = "件名{\\$user_name}";
3\\$message = "メッセージを入れる\\n\\n" . \\$user_name . "メッセージ2つ目" . $user_name . "テストテスト";
- 送信先($to):通知を受け取るメールアドレスを指定します。
- 件名($subject):ユーザー名を含む件名を設定することで、誰が実施した変更かをすぐに確認できます。
- 本文($message):.(ドット)で文字列を連結しています。\nは改行を示します。
3. ヘッダー設定
PHP
1$headers = array('Content-Type: text/plain; charset=UTF-8');
- Content-Type: text/plain:メール本文がプレーンテキストであることを示し、HTMLタグが含まれないことを保証します。
- charset=UTF-8:文字エンコーディングをUTF-8に指定し、多言語対応をしています。
4. メール送信の実行
PHP
1wp_mail($to, $subject, $message, $headers);
- wp_mail()関数を呼び出すことで、メールの送信を行います。この関数は、WordPressのメール送信に必要な設定を自動的に処理します。
まとめ
今回の実装は、ユーザーが行った変更をメールで通知する仕組みを提供します。リアルタイムでの管理及び反応が可能となります。wp_mail()はWordPressにおいて標準のメール送信手段であり、適切な設定を行うことで、信頼性の高い通知システムを構築できます。
コメントを残す