WordPressのdelete_userフックを使用したユーザー削除のカスタマイズ方法


  1. delete_userフックの基本的な使用方法: delete_userフックを使用するには、functions.phpファイルなどのテーマのファイルにコードを追加します。以下は基本的な使用方法の例です。
function custom_delete_user_function($user_id) {
    // ユーザー削除前に実行したい処理を記述する
    // 例: ユーザーの関連データの削除、カスタムログの作成など

    // 処理の終了後、削除されるユーザーIDを返す
    return $user_id;
}
add_action('delete_user', 'custom_delete_user_function');

上記の例では、custom_delete_user_functionという関数がdelete_userフックにフックされています。この関数内には、ユーザーが削除される前に実行したい処理を記述します。処理が完了したら、削除されるユーザーIDを返す必要があります。

  1. ユーザー削除時にカスタムメールを送信する例: delete_userフックを使用して、ユーザーが削除される際にカスタムメールを送信することもできます。以下はその例です。
function send_custom_delete_email($user_id) {
    $user_info = get_userdata($user_id);
    $to = $user_info->user_email;
    $subject = 'ユーザー削除のお知らせ';
    $message = 'あなたのアカウントが削除されました。';

    wp_mail($to, $subject, $message);
}
add_action('delete_user', 'send_custom_delete_email');

上記の例では、send_custom_delete_emailという関数がdelete_userフックにフックされています。この関数内では、get_userdata関数を使用してユーザー情報を取得し、その情報を使用してカスタムメールを送信しています。

このように、delete_userフックを使用することで、ユーザー削除時にさまざまなカスタマイズを行うことができます。必要に応じて、さらに詳細な処理やカスタマイズを追加することができます。