【www.bbyears.com--WordPress】
WordPress提供了一个可供插件重新定义的新用户邮件通知函数 wp_new_user_notification(),现在我们来重新定义这个函数的内容,来美化我们的邮件内容格式。
原函数函数内容如下:
代码如下
if ( !function_exists("wp_new_user_notification") ) :
/**
* Notify the blog admin of a new user, normally via email.
*
* @since 2.0
*
* @param int $user_id User ID
* @param string $plaintext_pass Optional. The user"s plaintext password
*/
function wp_new_user_notification($user_id, $plaintext_pass = "") {
$user = get_userdata( $user_id );
$user_login = stripslashes($user->user_login);
$user_email = stripslashes($user->user_email);
// The blogname option is escaped with esc_html on the way into the database in sanitize_option
// we want to reverse this for the plain text arena of emails.
$blogname = wp_specialchars_decode(get_option("blogname"), ENT_QUOTES);
$message = sprintf(__("New user registration on your site %s:"), $blogname) . "rnrn";
$message .= sprintf(__("Username: %s"), $user_login) . "rnrn";
$message .= sprintf(__("E-mail: %s"), $user_email) . "rn";
@wp_mail(get_option("admin_email"), sprintf(__("[%s] New User Registration"), $blogname), $message);
if ( empty($plaintext_pass) )
return;
$message = sprintf(__("Username: %s"), $user_login) . "rn";
$message .= sprintf(__("Password: %s"), $plaintext_pass) . "rn";
$message .= wp_login_url() . "rn";
wp_mail($user_email, sprintf(__("[%s] Your username and password"), $blogname), $message);
}
endif;
自定义邮件内容和格式
我们可以新建一个"插件",重新定义的wp_new_user_notification函数定义的邮件内容即可。我们在wp-content/plugins/目录下,新建一个文本文件命名为new-user-notification.php,插入以下代码,保存,然后在后台启动插件new-user-notification即可:
代码如下
/*
Plugin Name: new-user-notification
Description:重新定义发送邮件的内容和格式
Version: 1.0
*/
if ( !function_exists("wp_new_user_notification") ) :
/**
* Notify the blog admin of a new user, normally via email.
*
* @since 2.0
*
* @param int $user_id User ID
* @param string $plaintext_pass Optional. The user"s plaintext password
*/
function wp_new_user_notification($user_id, $plaintext_pass = "") {
$user = get_userdata( $user_id );
$user_login = stripslashes($user->user_login);
$user_email = stripslashes($user->user_email);
// 获取博客名称
$blogname = wp_specialchars_decode(get_option("blogname"), ENT_QUOTES);
// 给管理员发送的邮件内容,这里是HTML格式
$message = "
用户名:" . $user_login . "
Email:" . $user_email . "
如果您不是 " . $blogname . " 的管理员,请直接忽略本邮件!";
// 给网站管理员发送邮件
$message_headers = "Content-Type: text/html; charset="utf-8"n";
@wp_mail(get_option("admin_email"), sprintf(__("[%s] New User Registration"), $blogname), $message, $message_headers);
if ( empty($plaintext_pass) )
return;
// 你可以在此修改发送给新用户的通知Email,这里是HTML格式
$message = "
用户名:" . $user_login . "
登录密码:" . $plaintext_pass . "
登录网址:" . wp_login_url() . "
如果您没有在 ". $blogname . " 注册过任何信息,请直接忽略本邮件!";
// sprintf(__("[%s] Your username and password"), $blogname) 为邮件标题
wp_mail($user_email, sprintf(__("[%s] Your username and password"), $blogname), $message, $message_headers);
}
endif;
?>