由于需要,我要做的网站不需要注册的时候填写邮件,需要关闭必填,于是从网上找了教程,发现没有后台的选项,之后知道,discuz3.2之后就取消 取消邮箱必填 这个选项了,于是从网上找了点资料,成功关闭邮箱注册必填选项。 情况1:disczu3.2之前的版本,直接在后台-----全局------注册与访问控制,取消邮箱注册必填即可。
情况二:3.2后的版本,需要改动代码使 取消注册邮箱必填按钮 显现出来,具体步骤如下。 第一步:查找source/admincp/admincp_setting.php 文件 查找
- showsetting('setting_access_register_send_register_url', 'settingnew[sendregisterurl]', $setting['sendregisterurl'], 'radio');
复制代码
在这个代码下添加 - showsetting('setting_access_register_forge_email', 'settingnew[forgeemail]', $setting['forgeemail'], 'radio');
复制代码
第二步 :查找source/language/lang_admincp.php 文件 查找一个邮箱只允许注册一个帐户
注意:只有在站长 – 邮件设置中完成邮件设置,确保邮件能发送成功下可以开启该功能 在这段话下面添加 - 'setting_access_register_forge_email' => '取消注册邮箱必填',
-
- 'setting_access_register_forge_email_comment' => '开启后如果用不不填写注册邮箱,将自动生成一个邮箱地址',
复制代码
第三步 :查找source/class/class_member.php 文件 查找 - $email = strtolower(trim($_GET['email']));
-
- if(empty($this->setting['ignorepassword'])) {
-
- if($_GET['password'] !== $_GET['password2']) {
-
- showmessage('profile_passwd_notmatch');
-
- }
-
- if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
-
- showmessage('profile_passwd_illegal');
-
- }
-
- $password = $_GET['password'];
-
- } else {
-
- $password = md5(random(10));
-
- }
-
- }
复制代码
修改为 - $email = strtolower(trim($_GET['email']));
-
- if(empty($email) && $_G['setting']['forgeemail']) {
-
- $_GET['email'] = $email = strtolower(random(6)).'@'.$_SERVER['HTTP_HOST'];
-
- }
-
- if(empty($this->setting['ignorepassword'])) {
-
- if($_GET['password'] !== $_GET['password2']) {
-
- showmessage('profile_passwd_notmatch');
-
- }
-
- if(!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
-
- showmessage('profile_passwd_illegal');
-
- }
-
- $password = $_GET['password'];
-
- } else {
-
- $password = md5(random(10));
-
- }
-
- }
复制代码
这样 后台-----全局------注册与访问控制,中的取消邮箱注册必填选项 就会出来了,点击取消选项即可。哈哈!
|