前言
啊众所周知,子比主题是有自定义登录方式的,不过仅有几种,对于一些冷门站点压根就没有,那么这时候我们就可以通过修改主题文件来实现自己支持
需要准备
脑子、手、正版主题(盗版主题容易出事,支持正版)
开始上手
自定义登录方式有风险,请一定一定要备份数据!
本方法需要舍弃掉一种登录方法!
更新主题可能导致自定义失效
1、首先去主题设置-用户&互动-第三方登录中打开任何一个不想要的登录方式(不能为彩虹聚合登录或Zibll代理登录)本文以gitee为例
2、前往站点根目录/wp-content/themes/zibll/oauth/gitee/下(此处以gitee为例,具体文件名为啥可以自己使用第三方登录试试,链接中?前的一般就是)
3、更改login.php(以simsoft登录为例)
<?php
/*
* @Author: Qinver
* @Url: zibll.com
* @Date: 2021-04-11 21:36:20
* @LastEditTime: 2022-10-24 14:17:13
*/
//启用 session
@session_start();
//获取后台配置
$Config = get_oauth_config('gitee');
$OAuth = new \Yurun\OAuthLogin\Gitee\OAuth2($Config['appid'], $Config['appkey'], $Config['backurl']);
if ($Config['agent']) {
$OAuth->loginAgentUrl = (home_url('/oauth/giteeagent'));
}
//代理登录
zib_agent_login();
// 可选属性
/*
// 是否在登录页显示注册
$alipayOAuth->allowSignup = false;
*/
$url = $OAuth->getAuthUrl();
// 存储sdk自动生成的state,回调处理时候要验证
$_SESSION['YURUN_GITEE_STATE'] = $OAuth->state;
// 储存返回页面
$_SESSION['oauth_rurl'] = !empty($_GET["rurl"]) ? $_GET["rurl"] : '';
// 跳转到登录页
header('location:' . "https://id.simsoft.top/page/apps-auth.html?appid=43189243");//这段为跳转到登录页代码,请根据情况自己修改,如果也要使用Simsoft登录,直接改appid即可
4、改callback.php
<?php
/*
* @Author: Qinver
* @Url: zibll.com
* @Date: 2021-04-11 21:36:20
* @LastEditTime: 2022-06-23 23:27:55
*/
//启用 session
@session_start();
// 要求noindex
//wp_no_robots();
if (empty($_SESSION['YURUN_GITEE_STATE'])) {
wp_safe_redirect(home_url());
exit;
}
//获取后台配置
$json=json_decode(file_get_contents('https://id.simsoft.top/api/appverify.php?appid=43189243&token='.$_GET['token']));
$a=$json->usermail;
//[注意]请改这里,如果也是用的SimSoft登录,直接修改appid即可
$oauth_data = array(
'type' => 'gitee',
'openid' => $a,
'name' => $a,
// 'avatar' => $userInfo['avatar'],
// 'description' => !empty($userInfo['bio']) ? $userInfo['bio'] : '',
'getUserInfo' => $a,
);
//代理登录
zib_agent_callback($oauth_data);
$oauth_result = zib_oauth_update_user($oauth_data);
if ($oauth_result['error']) {
zib_oauth_die($oauth_result['msg']);
} else {
$rurl = !empty($_SESSION['oauth_rurl']) ? $_SESSION['oauth_rurl'] : $oauth_result['redirect_url'];
wp_safe_redirect($rurl);
exit;
}
wp_safe_redirect(home_url());
exit;
5、打开站点根目录/wp-content/themes/zibll/inc/functions,修改functions.php
先找到
$args['gitee'] = array(
'name' => 'Gitee',
'type' => 'gitee',
'name_key' => 'name',
'class' => '',
如果你改的是其他的请对于找
将这一段改成(上面那段代码应该还有行icon的和);,记得一起改了)
$args['gitee'] = array(
'name' => '氢软',
'type' => 'gitee',
'name_key' => 'name',
'class' => '',
'icon' => 'fa fa-diamond',
);
注意不要把这里的gitee改掉!!!!
6、去对应开放平台创建应用
SimSoft:SimID | 我的应用
回调地址填https://你的站点/oauth/登录方式(与文件夹名一致)/callback
然后获得一个appid,将其复制到前文的php指定位置
© 版权声明
文章版权归作者所有,未经允许请勿转载。
本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24小时之内删除,否则后果均由用户承担责任。
THE END
暂无评论内容