WordPress修改新用户注册邮件内容的方法

所属分类: CMS教程 / WordPress 阅读数: 1501
收藏 0 赞 0 分享

本文实例讲述了如何修改WordPress新用户注册邮件内容,因为系统发送的邮件是纯文本类型的,页面不太美观,又没有办法发送自定义的HTML格式的邮件,将修改方法分享给大家供大家参考。具体方法如下:

最简单的办法

方法一、直接手动修改:

修改wordpresswp-includes目录的pluggable.php,中的这段:

复制代码
代码如下:
$message = sprintf(__('Username: %s'), $user_login) . "";
$message .= sprintf(__('Password: %s'), $plaintext_pass) . "";
$message .= wp_login_url() . "";
wp_mail($user_email, sprintf(__('[%s] Your username and password'), $blogname), $message);

例如改为如下代码:

复制代码
代码如下:
$message .= sprintf(__('欢迎加入***网')) . "rn";
$message .= sprintf(__('Username: %s'), $user_login) . "rn";
$message .= sprintf(__('Password: %s'), $plaintext_pass) . "rn";
$message .= wp_login_url() . "rn";
$message .= sprintf(__('账号需进一步审核才可以登入,请通知网站管理员')) . "rn";
wp_mail($user_email, sprintf(__('[%s] Your username and password'), $blogname), $message);

方法二:

我们在当前主题的functions.php中加入重新定义的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);
// 获取博客名称
$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
// 给管理员发送的邮件内容,这里是HTML格式
$message = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>新用户注册</title></head><body><div align="center"><table cellpadding="0" cellspacing="1" style="border:3px solid #d9e9f1;background:#7fbddd; text-align:left;"><tr><td style="padding:0;"><table cellpadding="30" cellspacing="0" style="border:1px solid #ffffff;background:#f7f7f7;width:500px;"><tr><td style="line-height:2;font-size:12px;">您的网站 <strong>' . $blogname . '</strong> 有新用户注册。
用户名:' . $user_login . '
Email:' . $user_email . '
如果您不是 <strong>' . $blogname . '</strong> 的管理员,请直接忽略本邮件!</div></td></tr></table></td></tr></table></div></body></html>';
// 给网站管理员发送邮件
$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 ( emptyempty($plaintext_pass) )
return;

// 你可以在此修改发送给新用户的通知Email,这里是HTML格式
$message = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>新用户注册</title></head><body><div align="center"><table cellpadding="0" cellspacing="1" style="border:3px solid #d9e9f1;background:#7fbddd; text-align:left;"><tr><td style="padding:0;"><table cellpadding="30" cellspacing="0" style="border:1px solid #ffffff;background:#f7f7f7;width:500px;"><tr><td style="line-height:2;font-size:12px;">您刚刚在网站 <strong>' . $blogname . '</strong> 注册一个帐号。
用户名:' . $user_login . '
登录密码:' . $plaintext_pass . '
登录网址:<a href="' . wp_login_url() . '">' . wp_login_url() . '</a>
如果您没有在 <strong>'. $blogname . '</strong> 注册过任何信息,请直接忽略本邮件!</div></td></tr></table></td></tr></table></div></body></html>';
// sprintf(__('[%s] Your username and password'), $blogname) 为邮件标题
wp_mail($user_email, sprintf(__('[%s] Your username and password'), $blogname), $message, $message_headers);
}
endif;

中间的$message中的内容你自己爱怎么写就怎么写吧.

希望本文所述对大家的WordPress建站有所帮助。

更多精彩内容其他人还在看

wordpress 为主题添加AJAX提交评论功能的php代码

前几天,为了提高评论体验,为了减轻服务器负担,我为主题添加了AJAX提交评论功能,现在分享一下方法。
收藏 0 赞 0 分享

wordpress 优化指南

wordpress毫无疑问是一个优秀的博客系统,其最吸引人的一个特点就是有大量的外观主题(theme)可以满足个性化的博客展示需求。
收藏 0 赞 0 分享

wordpress 显示文章日期的方法

WordPress的模板非常灵活,一个优秀的模板所实现的功能往往超出你的想象。这篇文章说说在WordPress里调用文章的发布日期。
收藏 0 赞 0 分享

wordpress 博客优化历程(速度)

自从换了域名,换了主题以后,我一直努力令博客的浏览体验更加好,但因此也挂载了大量的JS文件,页面的载入速度一度变得非常缓慢。于是优化就迫在眉睫了。
收藏 0 赞 0 分享

wordpress 自动在正文内容后添加内容

很多时候,你都需要在文章内容后面添加一些信息,例如订阅,文章分享,收藏和Creative Commons协议声明等。一般情况下,你可以直接编辑主题的single.php文件添加代码来达到目的。
收藏 0 赞 0 分享

开发者应该留意的WordPress2.9新功能小结

WordPress是一款成熟的开源CMS平台,新推出的2.9版本依然保持了以往良好的口碑。这篇文章从WordPress 2.9的codex文档里摘录出几个开发者应该留意的功能进行简析。
收藏 0 赞 0 分享

允许 WordPress 上传任意文件的方法

从 WP 2.8.5 开始文件上传使用预定义的文件扩展名列表过滤,管理员也不例外。
收藏 0 赞 0 分享

WordPress 插件直接将服务器文件导入媒体库

WordPress 插件 直接将服务器文件导入媒体库
收藏 0 赞 0 分享

WordPress博客SEO更加完美的6个技巧

wordpress在搜索引擎优化方面做的也十分不错,在搜索引擎优化方面它基本上给我们解决了80%左右的问题,但余下的20%左右的SEO工作,还是需要人工要去做的,而且也是非常有必要的,怎么才能做好这余下的20%左右的工作呢?
收藏 0 赞 0 分享

WordPress 图片用单独域名储存方法

Yslow 提高网站加载速度里有这么一条:Used Cookie Free Domains , 大意是浏览器会对作用域内每个加载的对象传递 Cookie,在加载图像或者JS、CSS的时候最好用 Cookie-free 域名。如果没有多余的域名可以用一个子域实现,但是要设置 Coo
收藏 0 赞 0 分享
查看更多