我有一个非常具体的用例,每当注册新用户时,我想向站点管理员发送电子邮件。此电子邮件不是发送给用户的欢迎电子邮件,而是发送给管理员的电子邮件,其中包含新注册用户的详细信息,以便我以后可以联系我的用户,而无需参考数据库。
我可以在wordpress中实现这一目标吗?谢谢。我是WordPress的新手。
在wp-include/pluggable中.php有一个函数"wp_new_user_notification"来处理发送给用户的新注册电子邮件。在 4.3 之前,它还可以选择将副本发送给管理员,该副本现已弃用。在代码的那部分,只需从用户块中获取wp_email代码并更改管理员的"to"参数。
它将继续将其发送给用户,并将副本发送给管理员。
您可以使用WP动作钩子"user_register",该钩子在新用户注册后立即触发,并将新用户的ID传递给回调函数。
add_action( 'user_register', 'inform_admin');
function inform_admin ($user_id) {
$user = get_userdata($user_id);
//$user is now an object containing details of the user. e.g. $user->first_name @see https://developer.wordpress.org/reference/functions/get_userdata/ for more details
$email_context = ““;
$subject = ““;
// get the admin email
$admin_email = get_options('admin_email');
// send the email
wp_mail( $admin_email, $subject, $email_context);
}