让wordpress mu新用户注册后的密码明文显示,取消邮件通知
原帖来自我的博客:[url=http://www.foolpig.com/2008/04/14/wordpress-mu-ne/]http://www.foolpig.com/2008/04/14/wordpress-mu-ne/[/url]wordpress mu与wordpress不一样,这个新用户注册后是要求激活的,并且激活的链接会发到你的邮箱,但是在windows下的邮件发送比较麻烦
一朋友问我在windows下能不能解决wordpress mu的新用户注册的问题
那既然邮件收不到,那有两种办法可解决问题:
第一,用户注册后到数据库中查找activation_key,然后到http://$domain/wp-activate.php?key=
后面加上activation_key进行激活,这样虽然可以解决,但是如果注册用户较多,那就比较麻烦了
既然这样不可以,那想到有这个激活的链接,那能不能直接把激活的链接显示出来呢?这样应该可以解决了。
这就是要说的第二种解决办法了:
按照这个思路,查看了wordpress的注册用户的时候的文件,发现按照如下的办法可以显示激活链接
1、修改wp-signup.php文件
修改confirm_blog_signup函数,大概在374行:
[indent]function confirm_blog_signup($domain, $path, $blog_title, $user_name, $user_email, $meta) {
//增加下面三行:
global $wpdb;
$akey=$wpdb->get_var(”SELECT activation_key FROM wp_signups WHERE user_login = ‘$user_name’”);
$active_url=’http://’ . $domain . ‘/wp-activate.php?key=’ . $akey;
?>
<?php _e('But, before you can start using your blog, [b]you must activate it[/b].’) ?>
<?php printf(__('Check your inbox at [b]%s[/b] and click the link given. ‘), $user_email) ?>
<?php
//增加下面这一行
printf(__('Check your inbox at [url=http://www.foolpig.com/2008/04/14/wordpress-mu-ne/%1$s][color=#0000ff]%2$s[/color][/url] is active and click the link given. ‘), $active_url,$active_url) ?>
<?php
do_action('signup_finished');
}
[/indent]2、修改wp-activete.php文件:
大概在55行,修改为:
[indent]printf(__(’ Your blog at [url=http://www.foolpig.com/2008/04/14/wordpress-mu-ne/%1$s][color=#0000ff]%2$s[/color][/url] is active. You may now login to your blog using your chosen username of “%3$s”. userpass of “%4$s”. Please check your email inbox at %5$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can [url=http://www.foolpig.com/2008/04/14/wordpress-mu-ne/%6$s][color=#0000ff]reset your password[/color][/url].
‘), ‘http://’ . $signup->domain, $signup->domain, $signup->user_login, $signup->user_pass, $signup->user_email, ‘http://’ . $current_site->domain . $current_site->path . ‘wp-login.php?action=lostpassword’);
[/indent]也就是增加了$signup->user_pass的显示部分
测试的效果如下,按照步骤新建一个用户testaaa,邮箱[email]testaaa@sina.com[/email](随便写的 ^_^)
注册到如下图的部分:
[url=http://www.foolpig.com/wp-content/uploads/12.JPG][img=500,448]http://www.foolpig.com/wp-content/uploads/_12.JPG[/img][/url]
点击图中的链接后:
[url=http://www.foolpig.com/wp-content/uploads/13.JPG][img=500,324]http://www.foolpig.com/wp-content/uploads/_13.JPG[/img][/url]
看,显示了用户名和密码了吧,登录后可修改密码。
good luck! 好文章,谢谢分享
我崇拜楼主
看到没有,这才叫高手,能真正解决问题的人才是高人! 非常好,很实用,多谢。 运行出错,不能实现 不错◎ 可能是我不会贴代码,导致贴上来的代码在这上面显示的混乱的原因,有些朋友说执行有问题在我的博客:[url=http://www.foolpig.com/2008/04/14/wordpress-mu-ne/]http://www.foolpig.com/2008/04/14/wordpress-mu-ne/[/url]原文上的代码看起来比较清晰一些
如果有什么问题请在后面跟帖即可 偶朋友给我说1.5版本的没有我上面的那些代码,我看了下,1.5版本的确实有所改动,不过,wp-signup.php这个文件,对confirm_blog_signup这个函数的修改,我的这些代码都只是增加的,并没有改动。大家可以详细的看看应该就会明白。
另外
<p><?php
printf(__('Check this link <a href="%1$s">%2$s</a> is active and click the link given. '),$active_url,$active_url) ?>
</p>
这部分的内容增加到:
</ul>
<?php
do_action('signup_finished');
}
这部分内容前面即可 试一下,上次没成功
页:
[1]