user_email; $user_name = $current_user->display_name; // Get the admins that were set to receive notifications $users_ids = get_option( 'inspry_toolkit_enable_plugin_activations_admin_notifications_list' ); // Loop through users to get emails $to = []; if ( ! empty( $users_ids ) ) { foreach ( $users_ids as $user_id ) { $user_info = get_userdata( $user_id ); if ( $user_info && ! empty( $user_info->user_email ) ) { $to[] = $user_info->user_email; } } } else { // Fallback to admin email if no users are selected $to[] = get_option( 'admin_email' ); } // Set up and send the email $subject = '⚠️ Plugin ' . ucfirst( $status ); $body = "Attention:\n\nThe " . $plugin_name . " v" . $plugin_version . " plugin has been " . $status . " on your site (" . home_url() . ") by " . $user_name . " <" . $user_email . ">.\n"; $body .= "Please log in to ensure this is intentional."; wp_mail( $to, $subject, $body ); } } // Plugin activation hook add_action('activated_plugin', 'inspry_toolkit_plugin_activation_notification', 10, 2); function inspry_toolkit_plugin_activation_notification( $plugin, $network_wide ) { inspry_toolkit_plugin_activations_admin_notifications( $plugin, 'activated' ); } // Plugin deactivation hook add_action('deactivated_plugin', 'inspry_toolkit_plugin_deactivation_notification', 10, 2); function inspry_toolkit_plugin_deactivation_notification( $plugin, $network_wide ) { inspry_toolkit_plugin_activations_admin_notifications( $plugin, 'deactivated' ); }