TypechoOAuthLogin

适用于typecho的OAuth第三方登录插件,可以让typecho博客系统支持第三方账号登录、注册的插件。

前言

插件前身:[[tianlingzi/TeConnect]](https://github.com/tianlingzi/TeConnect),最后维护时间为2025年10月26日。

由于功能拓展以及后续开发需要,将插件改名为“TypechoOAuthLogin”。

2025.12,关于1.0版更新,对数据表的管理逻辑进行了调整,插件禁用时不再主动删除数据表,以方便插件的再次启用。这对升级插件很重要,避免了要重新绑定第三方登录信息的麻烦。将对数据表的操作转移到了插件的配置页中:单独增加了清空数据表和删除数据表。如果你不再使用本插件,请先点击删除数据表,再禁用插件。

2025.12.1,关于2.0版更新,主要是对完善用户信息这一板块进行优化:1.新增密码设置与校验;2.对前端进行重构美化,目前前端背景采用了 imgRun 提供的bing每日壁纸端口,实现了每次登录都有不同的背景;3.用户登录检查,检查本地账户可用性,解决了用户在登录时,本地账户已被删除,但是插件仍记录了该用户的情况;4.增强插件的安全性。

一、功能介绍

Typecho互联登录插件,目前已支持的第三方登录:QQ/微信/Github/Msn/Google/新浪微博/豆瓣/点点/淘宝网/百度。
后续会根据实际需要继续添加新的第三方接口,欢迎大家一起贡献。
如使用过程中遇到问题,可到这篇文章下留言,我会尽快解决。


二、插件下载

1.开源地址:https://github.com/tianlingzi/TypechoOAuthLogin
2.下载地址:https://github.com/tianlingzi/TypechoOAuthLogin/releases

3.本站下载:TypechoOAuthLogin.zip

4.插件试用:


三、安装步骤

  1. 解压插件到 Plugins目录;
  2. 将文件名改为“TypechoOAuthLogin”;
  3. 在后台启用插件,并配置插件参数(方法见:参数配置 - 配置示例);
  4. 在当前使用主题的适当位置添加 TypechoOAuthLogin_Plugin::show()方法,代码:
<?php TypechoOAuthLogin_Plugin::show(); ?>
  1. 在第三方平台设置网站回调域,注意区分http、https(方法见:参数配置 - 配置示例)。
  2. 如果您的主题开启了全站PJAX,需要把以下代码放入PJAX回调函数内:
/*PJAX时:来源页写入cookie*/
var exdate = new Date();
exdate.setDate(exdate.getDate() + 1);
document.cookie = "TypechoOAuthLogin_Referer=" + encodeURI(window.location.href) + "; expires=" + exdate.toGMTString() + "; path=/";

四、参数配置

配置示例

名称类型配置示例网站回调域
腾讯QQqqqq:APP_KEY,APP_SECRET,腾讯QQhttps://127.0.0.1/oauth_callback?type=qq
微信Wechatqq:APP_KEY,APP_SECRET,微信https://127.0.0.1/oauth_callback?type=Wechat
Githubgithubgithub:APP_KEY,APP_SECRET,Githubhttps://127.0.0.1/oauth_callback?type=github
MSNmsnmsn:APP_KEY,APP_SECRET,MSNhttps://127.0.0.1/oauth_callback?type=msn
Googlegooglegoogle:APP_KEY,APP_SECRET,Googlehttps://127.0.0.1/oauth_callback?type=google
新浪微博sinasina:APP_KEY,APP_SECRET,新浪微博https://127.0.0.1/oauth_callback?type=sina
豆瓣doubandouban:APP_KEY,APP_SECRET,豆瓣https://127.0.0.1/oauth_callback?type=douban
点点diandiandiandian:APP_KEY,APP_SECRET,点点https://127.0.0.1/oauth_callback?type=diandian
淘宝网taobaotaobao:APP_KEY,APP_SECRET,淘宝网https://127.0.0.1/oauth_callback?type=taobao
百度baidubaidu:APP_KEY,APP_SECRET,百度https://127.0.0.1/oauth_callback?type=baidu

1:后台互联配置

具体格式为:type:appid,appkey,title,注释:

  • type:第三方登录帐号类型
  • appid:第三方开放平台申请的应用id
  • appkey:第三方开放平台申请的应用key
  • title:登录按钮的标题
    在后台互联配置中,直接以文本形式填写,一行为一个帐号系统的参数;
    为减少错误发生,您可以复制对应的 配置示例,把 APP_KEYAPP_SECRET改成您自己的参数就可以了!
    例如:qq:APP_KEY,APP_SECRET,腾讯QQ
    改成:qq:101015836,547s87f8s7df7sd877ji75s78sdfd,腾讯QQ
    粘贴到后台 互联配置,即完成了腾讯QQ登录的配置,其他类型同理!

2:网站回调域配置

您可以复制对应的 配置示例,把 127.0.0.1改成您的域名,填写到第三方开发平台的网站回调域设置中,即可完成配置!

以本博客 www.tianlingzi.top,设置QQ登录,为例:
复制插件中给出的回调地址:https://www.tianlingzi.top/oauth_callback?type=qq

五、插件截图

请输入图片描述

请输入图片描述

六、拓展

美化插件显示。使用一个白色背景框将登陆按钮独立出来。

<!-- ① 社交登录 -->
<div class="tc-social-wrapper">
    <?php TypechoOAuthLogin_Plugin::show(); ?>
</div>

<!-- ① 对应极简美化 -->
<style>
.tc-social-wrapper{
    margin:16px 0;
    padding:12px 24px;
    background:#fff;
    border-radius:6px;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
    text-align:center;          /* 让内部按钮水平居中 */
}
.tc-social-wrapper *{margin:4px;}
</style>
最后修改:2026 年 08 月 12 日
如果觉得我的文章对你有用,请随意赞赏