回答:
新しいユーザーの電子メールは、wp_new_user_notification()
プラグイン可能な機能を使用して送信されます。つまり、上書きすることができます。
// Redefine user notification function
if ( !function_exists('wp_new_user_notification') ) {
function wp_new_user_notification( $user_id, $plaintext_pass = '' ) {
$user = new WP_User($user_id);
$user_login = stripslashes($user->user_login);
$user_email = stripslashes($user->user_email);
$message = sprintf(__('New user registration on your blog %s:'), get_option('blogname')) . "\r\n\r\n";
$message .= sprintf(__('Username: %s'), $user_login) . "\r\n\r\n";
$message .= sprintf(__('E-mail: %s'), $user_email) . "\r\n";
@wp_mail(get_option('admin_email'), sprintf(__('[%s] New User Registration'), get_option('blogname')), $message);
if ( empty($plaintext_pass) )
return;
$message = __('Hi there,') . "\r\n\r\n";
$message .= sprintf(__("Welcome to %s! Here's how to log in:"), get_option('blogname')) . "\r\n\r\n";
$message .= wp_login_url() . "\r\n";
$message .= sprintf(__('Username: %s'), $user_login) . "\r\n";
$message .= sprintf(__('Password: %s'), $plaintext_pass) . "\r\n\r\n";
$message .= sprintf(__('If you have any problems, please contact me at %s.'), get_option('admin_email')) . "\r\n\r\n";
$message .= __('Adios!');
wp_mail($user_email, sprintf(__('[%s] Your username and password'), get_option('blogname')), $message);
}
}
functions.php
。ファイルに追加するときではなく、別個のプラグインとしてのみ機能するようです。これで完璧に動作するようになりました。このすばらしいコードに感謝します!
wpmu_signup_user_notification
だと思います。
2018年以降のユーザーの場合:
WordPress 4.9.0以降、このために使用できる新しいフィルターがあります(プラグインはもう必要ありません):
管理者に送信される電子メールの使用例(これをテーマのfunctions.phpに貼り付けることができます):
add_filter( 'wp_new_user_notification_email_admin', 'custom_wp_new_user_notification_email', 10, 3 );
function custom_wp_new_user_notification_email( $wp_new_user_notification_email, $user, $blogname ) {
$wp_new_user_notification_email['subject'] = sprintf( '[%s] New user %s registered.', $blogname, $user->user_login );
$wp_new_user_notification_email['message'] = sprintf( "%s ( %s ) has registerd to your blog %s.", $user->user_login, $user->user_email, $blogname );
return $wp_new_user_notification_email;
}
wp_new_user_notification_email
とwp_new_user_notification_email_admin
フィルターを使用できます。興味のある方は、の完全なドキュメントとソースコードをご覧くださいwp_new_user_notification()
。