サポート » 使い方全般 » 管理画面のユーザープロフィールの情報が変更されたら管理者に通知

  • 複数ユーザーのサイトを運営しております。

    管理画面のユーザープロフィールの情報が書き換えられたら、管理者にメールで通知するような方法はありませんでしょうか。

    例えば、function.phpなどを利用して、「プロフィールを更新」ボタンが押されたらメールで知らせるなど。

    どうぞ。よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • ちょうどこれからマルチサイトを運営する予定なのでやっつけですが簡単なのを書いてみました。
    functions.phpに記述して使います。

    //プロフィールのアップデートが行われたら管理者にメール送信
    function profile_update_notice() {
    	global $current_user;
    	get_currentuserinfo();
    	$update_user_id = $current_user->ID;
    	$update_user_name = $current_user->user_login;
    	$date = date('Y-m-d H:i:s');
    	$send_to = get_option('admin_email');
    	$subject = '【プロフィール更新通知】ユーザー名:'.$update_user_name;
    	$message = <<< eof
    以下のユーザーのプロフィールが更新されました。
    -----
    ユーザー名:{$update_user_name}
    ユーザーID:{$update_user_id}
    更新日時:{$date}
    -----
    eof;
    	wp_mail( $send_to, $subject, $message);
    }
    add_action('profile_update', 'profile_update_notice');

    サーバーの時刻設定が日本標準時になっていないとdate関数で取得する時間がズレるので、その場合は date_default_timezone_set(‘Asia/Tokyo’); などで時間を合わせる必要があります。
    実際に使う場合にはユーザー権限の確認とかもした方が良いかもしれません。
    あと、特に共用のレンタルサーバなどの場合はメールが頻繁に飛ぶようだとメールサーバに負荷がかかるので小規模な環境から試した方が良いと思います。

    書いた後に検索したら以下のサイトにも同じようなコードが載っていたので参考に。
    参考:Send email notification when profile updates

    トピック投稿者 torav

    (@torav)

    t.okuboさん

    まんまテストしたら成功しました!!

    本当にありがとうございます。

    小規模ではありますが、「変更したら連絡してね」ってルールもなんだし、、困ってました。
    大変たすかりました。
    ホントホントありがとうございますっ!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「管理画面のユーザープロフィールの情報が変更されたら管理者に通知」には新たに返信することはできません。