• 注册
  • 七日杀MOD 七日杀MOD 关注:1 内容:1036

    分享discuz後台添加取消註冊郵箱必填功能 (x3.2 版本 繁和簡)

  • 查看作者
  • 打赏作者
    • 七日杀MOD
    • Lv.6
      黄金会员
      官方团队

      大家好

      今天有看到有站長想去掉註冊時郵箱必填

      x3.0 和 x3.1 版本時後台可以設置的

      但 x3.2 版本後台又取消這個功能設置了

      剛才有空時整理了一下

      分享給有需要的站長們

      另外樓主樓層第二頁

      提供簡體版本方便其他站長閱讀^^

      打開

      source/admincp/admincp_setting.php 文件

      查找

      1. showsetting('setting_access_register_send_register_url', 'settingnew[sendregisterurl]', $setting['sendregisterurl'], 'radio');

      复制代码

      在這段代碼下方添加

      1. showsetting('setting_access_register_forge_email', 'settingnew[forgeemail]', $setting['forgeemail'], 'radio');

      复制代码

      再打開

      source/language/lang_admincp.php 文件

      查找

      個郵箱只允許註冊一個帳戶<br/>注意:只有在<a href="?action=setting&operation=mail">站長 - 郵件設置</a>中完成郵件設置,確保郵件能發送成功下可以開啟該功能 ',

      复制代码

      在這段代碼下方添加

      1. 'setting_access_register_forge_email' => '取消註冊郵箱必填',
      2.         'setting_access_register_forge_email_comment' => '開啟後如果用戶不填寫註冊郵箱,將自動生成一個隨機郵箱地址',

      复制代码

      再打開

      source/class/class_member.php 文件

      查找

      1. $email = strtolower(trim($_GET['email']));
      2.                                 if(empty($this->setting['ignorepassword'])) {
      3.                                         if($_GET['password'] !== $_GET['password2']) {
      4.                                                 showmessage('profile_passwd_notmatch');
      5.                                         }
      6.                                         if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
      7.                                                 showmessage('profile_passwd_illegal');
      8.                                         }
      9.                                         $password = $_GET['password'];
      10.                                 } else {
      11.                                         $password = md5(random(10));
      12.                                 }
      13.                         }

      复制代码

      替換為

      1. $email = strtolower(trim($_GET['email']));
      2.                                 if(empty($email) && $_G['setting']['forgeemail']) {
      3.                                         $_GET['email'] = $email = strtolower(random(6)).'@'.$_SERVER['HTTP_HOST'];
      4.                                 }
      5.                                 if(empty($this->setting['ignorepassword'])) {
      6.                                         if($_GET['password'] !== $_GET['password2']) {
      7.                                                 showmessage('profile_passwd_notmatch');
      8.                                         }
      9.                                         if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
      10.                                                 showmessage('profile_passwd_illegal');
      11.                                         }
      12.                                         $password = $_GET['password'];
      13.                                 } else {
      14.                                         $password = md5(random(10));
      15.                                 }
      16.                         }

      复制代码

      修改前請先備份

      修改後記得更新緩存

      修改前

      修改後

      註冊時就可以不用填寫 E-mail

      大家好

      今天有看到有站长想去掉注册时邮箱必填

      X3.0 和 X3.1版本时后台可以设置的

      但X3.2版本后台又取消这个功能设置了

      刚才有空时整理了一下

      分享给有需要的站长们^^

      打开

      source/admincp/admincp_setting.php 文件

      查找

      1. showsetting('setting_access_register_send_register_url', 'settingnew[sendregisterurl]', $setting['sendregisterurl'], 'radio');

      复制代码

      在这段代码下方添加

      1. showsetting('setting_access_register_forge_email', 'settingnew[forgeemail]', $setting['forgeemail'], 'radio');

      复制代码

      再打开

      source/language/lang_admincp.php 文件

      查找

      個郵箱只允許註冊一個帳戶<br/>注意:只有在<a href="?action=setting&operation=mail">站長 - 郵件設置</a>中完成郵件設置,確保郵件能發送成功下可以開啟該功能 ',

      复制代码

      在这段代码下方添加

      1. 'setting_access_register_forge_email' => '取消註冊郵箱必填',
      2.         'setting_access_register_forge_email_comment' => '開啟後如果用戶不填寫註冊郵箱,將自動生成一個隨機郵箱地址',

      复制代码

      再打开

      source/class/class_member.php 文件

      查找

      1. $email = strtolower(trim($_GET['email']));
      2.                                 if(empty($this->setting['ignorepassword'])) {
      3.                                         if($_GET['password'] !== $_GET['password2']) {
      4.                                                 showmessage('profile_passwd_notmatch');
      5.                                         }
      6.                                         if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
      7.                                                 showmessage('profile_passwd_illegal');
      8.                                         }
      9.                                         $password = $_GET['password'];
      10.                                 } else {
      11.                                         $password = md5(random(10));
      12.                                 }
      13.                         }

      复制代码

      替换为

      1. $email = strtolower(trim($_GET['email']));
      2.                                 if(empty($email) && $_G['setting']['forgeemail']) {
      3.                                         $_GET['email'] = $email = strtolower(random(6)).'@'.$_SERVER['HTTP_HOST'];
      4.                                 }
      5.                                 if(empty($this->setting['ignorepassword'])) {
      6.                                         if($_GET['password'] !== $_GET['password2']) {
      7.                                                 showmessage('profile_passwd_notmatch');
      8.                                         }
      9.                                         if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
      10.                                                 showmessage('profile_passwd_illegal');
      11.                                         }
      12.                                         $password = $_GET['password'];
      13.                                 } else {
      14.                                         $password = md5(random(10));
      15.                                 }
      16.                         }

      复制代码

      修改前请先备份

      修改后记得更新缓存

      注册时就可以不用填写电子邮箱

      请登录之后再进行评论

      登录
    • 做任务
    • 实时动态
    • 偏好设置
    • 帖子间隔 侧栏位置: