抛去部分站长担心的用户可控性这一点不说,单就不设独立密码无法同步登录 UCENTER 下其它应用这一点,我就认为在注册时设置独立密码是非常必要的。特别是很多站点高度整合了一些附属的应用,比如点评、外部分类信息系统等,如果不能让用户同步登录,是严重影响用户体验的。
通过下面的几个步骤,可以完美实现 QQ 互联用户注册时完成独立密码的设置。但需要注意的是,注册完成后首次自动进入登录状态下,此时 UCENTER 的
应用仍然无法同步登录,需要用户退出后第二次登录时,才能实现登录的同步 (但我认为到这一步已经不是什么问题了,可以在页面上做一个提示) 。
1 、打开文件 source/plugin/qqconnect/template/module.htm 文件,查找
- $('{$_G['setting']['reginput']['password']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
- $('{$_G['setting']['reginput']['password']}').outerHTML += '$js1';
- $('{$_G['setting']['reginput']['password']}').required = 0;
- $('{$_G['setting']['reginput']['password2']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
- $('{$_G['setting']['reginput']['password2']}').required = 0;
修改成
- //$('{$_G['setting']['reginput']['password']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
- $('{$_G['setting']['reginput']['username']}').outerHTML += '$js1';
- $('{$_G['setting']['reginput']['password']}').required = 1;
- //$('{$_G['setting']['reginput']['password2']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
- $('{$_G['setting']['reginput']['password2']}').required = 1;
2 、打开文件 source/module/member/member_connect.php ,查找
- $ctl_obj->setting['ignorepassword'] = 1;
在前面加两道斜杠 // 将它注释掉。
3 、打开文件 source/module/member/member_connect_register.php ,查找
- DB::query("INSERT INTO
".DB::table('common_member_connect')." (uid, conuin, conuinsecret,
conopenid, conispublishfeed, conispublisht, conisregister,
conisqzoneavatar, conisfeed) VALUES ('$uid', '$conuin', '$conuinsecret',
'$conopenid', '$conispublishfeed', '$conispublisht', '1',
'$is_qzone_avatar', '$user_auth_fields')");
修改成 (只变动了一个数字)
- DB::query("INSERT INTO
".DB::table('common_member_connect')." (uid, conuin, conuinsecret,
conopenid, conispublishfeed, conispublisht, conisregister,
conisqzoneavatar, conisfeed) VALUES ('$uid', '$conuin', '$conuinsecret',
'$conopenid', '$conispublishfeed', '$conispublisht', '0',
'$is_qzone_avatar', '$user_auth_fields')");
效果如下图: