密通学院

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6381|回复: 0

[开发] DISCUZ论坛完善QQ互联注册方式,解决用户没有密码问题

[复制链接]
  • TA的每日心情
    可爱
    2018-6-29 10:04
  • 289

    主题

    319

    帖子

    9万

    铜板

    超级版主

    Rank: 8Rank: 8

    积分
    93815
    QQ
    发表于 2017-2-23 09:19:52 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    discuz论坛自带的QQ互联插件,可以很方便的让用户使用QQ号登录discuz论坛,降低了注册门槛,提高了用户体验。但就是因为减少了注册时需要填写的信息,导致通过QQ互联方式注册的用户不知道自己的论坛密码是多少。如果UCenter用户中心只管理discuz论坛,或许个问题还可以忽略,但如果还有别的分站需要这些账户进行同步登录,怎么办?

    如果不做任何修正,那么用户只能通过修改密码的方式来“找回”密码,才能登录另一个分站,这无疑是一个糟糕的用户体验。解决这一问题最好的方法就是,让用户在通过QQ互联方式注册的时候,创建一个密码。

    百度了一下,发现这个问题很早以前就有前辈给出了解决方案三部曲,下边就给出最新版discuz 3.2的调整细节:

    1)修改QQ互联模版文件 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;


    修改后如下:
    //$ctl_obj->setting['ignorepassword'] = 1;

    3)修改会员注册接口文件 source/module/member/member_connect_register.php

    查找 conisregister,discuz 3.2版本在第102行,把它的值由1改为0即可,修改后如下:


    C::t('#qqconnect#common_member_connect')->insert(array(
        'uid' => $uid,
        'conuin' => $conuin,
        'conuinsecret' => $conuinsecret,
        'conuintoken' => $conuintoken,
        'conopenid' => $conopenid,
        'conispublishfeed' => $conispublishfeed,
        'conispublisht' => $conispublisht,
        'conisregister' => '0',
        'conisqzoneavatar' => $is_qzone_avatar,
        'conisfeed' => '1',
        'conisqqshow' => $is_use_qqshow,
    ));


    修改完成后的效果如下图
    212512d7tr3i1bjlcr5i17.jpg


    如果您有业务需求,可以和我联系:http://wpa.qq.com/msgrd?V=3& ... yes&from=discuz
    回复

    使用道具 举报

    快速回复: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    首页|Archiver|手机版|小黑屋|密通学院:专业网络营销服务商

    GMT+8, 2024-4-20 15:23 , Processed in 0.151367 second(s), 30 queries QQ

    Powered by XMT Inc. © 2015-2025 ArrayV1.0 豫ICP备17022382号

    系统运营:密城通 豫公网安备 41018302000212 号

    快速回复 返回顶部 返回列表