返回列表 发帖
查看: 2824|回复: 0

後台添加取消註冊郵箱必填功能 (繁和簡)

69

主题

108

回帖

706

积分

自成一派

贡献
4 点
金币
154 个
发表于 2019-8-14 00:44:55 | 显示全部楼层 |阅读模式



详细教程以及代码.zip (1.46 KB, 下载次数: 92)



大家好
今天有看到有站長想去掉註冊時郵箱必填
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 文件

查找

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



在這段代碼下方添加

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



再打開

source/class/class_member.php 文件

查找

  1. <p>$email = strtolower(trim($_GET['email']));</p><p>                                if(empty($this->setting['ignorepassword'])) {</p><p>                                        if($_GET['password'] !== $_GET['password2']) {</p><p>                                                showmessage('profile_passwd_notmatch');</p><p>                                        }</p><p>
  2. </p><p>                                        if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {</p><p>                                                showmessage('profile_passwd_illegal');</p><p>                                        }</p><p>                                        $password = $_GET['password'];</p><p>                                } else {</p><p>                                        $password = md5(random(10));</p><p>                                }</p><p>                        }</p>
复制代码



替換為

  1. <p>$email = strtolower(trim($_GET['email']));</p><p>                                if(empty($email) && $_G['setting']['forgeemail']) {</p><p>                                        $_GET['email'] = $email = strtolower(random(6)).'@'.$_SERVER['HTTP_HOST'];</p><p>                                }</p><p>                                if(empty($this->setting['ignorepassword'])) {</p><p>                                        if($_GET['password'] !== $_GET['password2']) {</p><p>                                                showmessage('profile_passwd_notmatch');</p><p>                                        }</p><p>
  2. </p><p>                                        if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {</p><p>                                                showmessage('profile_passwd_illegal');</p><p>                                        }</p><p>                                        $password = $_GET['password'];</p><p>                                } else {</p><p>                                        $password = md5(random(10));</p><p>                                }</p><p>                        }</p>
复制代码



修改前請先備份
修改後記得更新緩存

修改前

1.jpg

修改後

2.jpg

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


3.jpg
4.jpg



大家好
今天有看到有站长想去掉注册时邮箱必填
X3.0 和 X3.1版本时后台可以设置的

但X3.2版本后台又取消这个功能设置了
刚才有空时整理了一下
分享给有需要的站长们^^

打开

source/admincp/admincp_setting.php 文件

查找
  1. <p>
  2. </p><p>showsetting('setting_access_register_send_register_url', 'settingnew[sendregisterurl]', $setting['sendregisterurl'], 'radio');</p>
复制代码



在这段代码下方添加

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



再打开

source/language/lang_admincp.php 文件

查找

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



在这段代码下方添加

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



再打开

source/class/class_member.php 文件

查找

  1. <p>$email = strtolower(trim($_GET['email']));</p><p>                                if(empty($this->setting['ignorepassword'])) {</p><p>                                        if($_GET['password'] !== $_GET['password2']) {</p><p>                                                showmessage('profile_passwd_notmatch');</p><p>                                        }</p><p>
  2. </p><p>                                        if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {</p><p>                                                showmessage('profile_passwd_illegal');</p><p>                                        }</p><p>                                        $password = $_GET['password'];</p><p>                                } else {</p><p>                                        $password = md5(random(10));</p><p>                                }</p><p>                        }</p>
复制代码



替换为

  1. <p>$email = strtolower(trim($_GET['email']));</p><p>                                if(empty($email) && $_G['setting']['forgeemail']) {</p><p>                                        $_GET['email'] = $email = strtolower(random(6)).'@'.$_SERVER['HTTP_HOST'];</p><p>                                }</p><p>                                if(empty($this->setting['ignorepassword'])) {</p><p>                                        if($_GET['password'] !== $_GET['password2']) {</p><p>                                                showmessage('profile_passwd_notmatch');</p><p>                                        }</p><p>
  2. </p><p>                                        if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {</p><p>                                                showmessage('profile_passwd_illegal');</p><p>                                        }</p><p>                                        $password = $_GET['password'];</p><p>                                } else {</p><p>                                        $password = md5(random(10));</p><p>                                }</p><p>                        }</p>
复制代码



修改前请先备份
修改后记得更新缓存

修改前

5.jpg

修改后

6.jpg

注册时就可以不用填写电子邮箱
7.jpg
8.jpg



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-4-24 08:26 , Processed in 0.042690 second(s), 9 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表