一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Wordpress用户注册邮件内容自定义格式美化实例

时间:2014-11-22 编辑:简简单单 来源:一聚教程网

 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 = '新用户注册
您的网站 ' . $blogname . ' 有新用户注册。
用户名:' . $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 = '新用户注册
您刚刚在网站 ' . $blogname . ' 注册一个帐号。
用户名:' . $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;

?>

热门栏目