dahuie 发表于 2010-3-14 11:58:57

WordPress注册无须等待邮件

WordPress注册无须等待邮件,直接显示密码(非插件),不需要插件支持,直接修改wp-login.php文件即可,大大节省了服务器资源。(本方法适合所有wordpress版本)
打开wp-login.php:
1、搜索下面这句,位于 register_new_user 函数中。用于注册成功后发送通知。找到后把它注释掉(注释方法:在代码的前面加 “/*” 代码的后面加 “*/” 不包含引号)。
wp_new_user_notification($user_id, $user_pass);
2、并在上面这句的下一行加上两句:
setcookie(“u”, $user_login);
setcookie(“user_pass”, $user_pass);
目的是把注册时填写的用户名,以及wordpress随机生成的密码写入cookies,以便在后面调用。
3、搜索下面这句:
$errors->add(‘registered’, __(‘Registration complete. Please check your e-mail.’), ‘message’);
并把它替换为:
$errors->add(‘registered’, __(‘注册成功!用户名:’.$_COOKIE["u"].’ 密码:’.$_COOKIE["user_pass"].’(登录后自行修改成您便于记忆的密码)’), ‘message’);
到此,就修改完成了。保存,上传。
还有一处建议修改(请看演示图片显示的文字)
<?php _e(‘A password will be e-mailed to you.’) ?>
替换里面的文字,以防用户注册完毕后关闭注册页而收不到密码。
我替换的文字为
<?php _e(‘注册完毕后,密码会自动生成在本页。’) ?>
我和作者不同,我在最后一段没有修改php文件,而是直接修改了.po中文包,当然,效果都一样的。另外,我寂静街设置为立刻看到密码,并邮件副本,这样更可靠。至于是否选择什么样的模式来设置自己网站,这完全是个人喜好问题了~
注:如果出现乱码,请将文件转码为UTF-8。
http://silentstreet.net/blog/uploads/2009/01/image-thumb20.png

445566 发表于 2010-3-14 12:48:55

呵呵。不错。就是wp生成的密码只适合工具记。但是也安全。小白们不太会用啊,不适合国人的习惯

嗯嗯 发表于 2010-3-14 13:33:20

我把用户注册功能给关了~~~:lol

breaknew 发表于 2010-3-14 17:39:05

我还从来没有注册过,感谢楼主分享

liuxin88 发表于 2010-3-14 18:08:55

我都把注册功能给关闭了! 没啥太大用处!

imchazi 发表于 2010-3-14 19:15:30

呵呵

谢谢啦!!!

雪域光芒 发表于 2010-3-15 10:41:32

我也直接关了 省得麻烦

lyyxyyl 发表于 2010-3-15 12:52:37

感谢楼主分享,学习下,留着备用

hlzone 发表于 2010-3-15 15:18:40

这位大神说到精髓上了:victory:

lanky 发表于 2010-3-15 15:47:10

这个教程还不错
学习了
页: [1]
查看完整版本: WordPress注册无须等待邮件