WordPress自定义用户注册页面插件

Ludou
文章目录

     如果你的WordPress开发后台注册的话,可能会遇到一个问题,那就发送email的问题。用户注册时使用Email给他发送密码的目的是验证用户输入的Email的有效性,但是如果你的主机不支持发送Email,那么其他人就无法在你的WordPress站点注册。之前也有很多教程教你如何解决这个问题,解决方法是修改WordPress的源文件,让用户注册后直接给他显示密码,而不是给他发送Email,这样问题是解决了,但是每次WordPress升级后,又要重新修改,以现在WordPress的升级速度也够你受得了!

     现在我写了一个WordPress插件,通过修改后台的注册表单,让用户注册时自行填写密码,不用去Email接收密码,管理员也不用担心WordPress升级后带来的影响,同时这个插件支持用户自行选择他需要注册的用户角色。具体演示见下图 :

WordPress后台注册表单

插件使用

     下载插件压缩包,解压后上传至WordPress插件目录下,即/wp-content/plugins/,到WordPress后台激活插件Ludou Custom User Register即可,你的后台注册表单就已经像上图的一样了。该插件只针对WordPress单站点,开启多站点功能,本插件无效。

     本段内容针对1.0版本有效—>> 如果你是个"插件控",总想将插件数量控制在一定范围内,但是又需要插件的功能,那就用文本编辑器打开ludou-custom-register.php,将里面的php代码全部复制到主题目录下的functions.php即可,实现的功能是完全一样的(现在你应该醒悟,那些所谓的 "免插件实现**功能" 以及 "纯代码实现**功能",其实就是插件)。

     这个插件支持用户注册时选择自己的角色,可选订阅者和投稿者,如果你不想让用户注册时选择身份,1.0版本请用文本编辑器打开ludou-custom-register.php,删除97 – 104行、116 – 117行以及124行代码即可;2.0版本删除91 – 99行、134-135行以及143行。

     2.0版本添加了验证码功能,增强了反恶意注册的功能。如果你不需要这个功能,可以用文本编辑器打开ludou-custom-register.php,删除100 – 110行,120-127行,以及整个captcha文件夹。

     2.0.1版本可以参考2.0版的代码进行修改或删除。

更新记录

1.0版本 2011年03月25日
   * 首个版本

2.0版本 2011年04月25日
   * 去除注册后首次登陆,要求修改默认密码的提示
   * 添加验证码功能,增强防恶意注册能力
   * 改进了部分HTML代码

2.0.1版本 2011年05月24日
   * 去除了SESSION检验恶意注册的功能,因为已经有注册码了
   * 改进了部分HTML和PHP代码
   * 添加了部分代码注释

插件下载

   1.0版本(不带验证码)
   2.0版本
   2.0.1版本(当前最新版)

本文版权归露兜博客所有,转载引用请完整注明以下信息:
本文作者:Ludou
本文标题:WordPress自定义用户注册页面插件
本文地址:http://www.ludou.org/wordpress-ludou-custom-user-register.html

露兜博客博主,男生,业余Web程序员,儒家思想受益者。文采不佳,不喜欢聚光灯,不喜欢吹牛,不喜欢无序的做事方式。闲时喜欢写些代码自娱自乐,并在博客中分享一些个人技术经验。

标签: ,

69 条评论

我来说两句
1 2 265
  1. 豆麦

    很好,一直在找,拿来用了,非常感谢!博主的博客不错,学了很多东西。

  2. smith

    很好的插件,请问可不可以让用户在注册的时候多一些角色选择,因为需要,用角色插件建立了一些默认种类以外的角色,谢谢

  3. 蓬蓬

    报告博主,无法下载啊,点击链接后没点反应

  4. 路人

    提示:这个插件在启用的过程中产生了 3 个字符的异常输出。如果您遇到了“headers already sent”错误、同步 feed(通常是 RSS)出错等问题,请尝试禁用或移除本插件。

  5. lzpdn

    注册的密码无法登陆网站

  6. shuang

    为什么下载不成呢 说文件已损坏

    • Ludou

      我这一切正常,之前也没人反应这个问题。
      不知道你下载的是哪个版本?是在解压的时候提示错误?

      • shuang

        Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by (output started at D:\AppServ\www\education-wp\wp-content\themes\WordPress BBtheme CMS\functions.php:6) in D:\AppServ\www\education-wp\wp-content\themes\WordPress BBtheme CMS\functions.php on line 17

        Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at D:\AppServ\www\education-wp\wp-content\themes\WordPress BBtheme CMS\functions.php:6) in D:\AppServ\www\education-wp\wp-content\themes\WordPress BBtheme CMS\functions.php on line 17
        在本地测试出现这样的提示 谢谢 已经下载成了 非常感谢

        • Ludou

          1、你把本插件禁用,看看还有没有问题
          2、第一步不行的话,你换个主题并激活插件,看看有没有问题
          3、以上都不行,就换别的插件吧,如WP User Registration

  7. clearsky

    为这个功能难受了很长时间了,谢谢分享!

  8. 逍遥剑

    "密码将通过电子邮件发送给您"

    这一句在哪里修改呀

  9. keuol

    请问我可以让用户注册的时候,身份直接是投稿者这个选项吗?或者直接关闭了这个选项。客户只要注册就是投稿者身份。求解·~

    • Ludou

      插件使用 那里已经有说明了,然后到后台 – 设置 – 常规,设置一下“新用户默认角色”就可以了。

  10. a1311340875

    问一下,哪边栏的注册登录界面怎么弄出来啊,跪求啊!

  11. 李君南

    我也遇到同样问题,登陆页面在哪里?

  12. 飞天大圣

    请教一下有没有插件可随意实现多站点下的新用户注册?

1 2

发表评论

订阅评论