狂雨CMS第三方聚合登录插件
功能说明
OAuth2Login 是一个第三方 OAuth 2.0 聚合登录插件,支持 QQ、微信、支付宝、华为、Google、飞书、钉钉、Gitee、GitHub 等第三方平台登录。
安装说明
- 上传插件到
addons/OAuth2Login目录 - 访问
/admin/addons/install?addon_name=OAuth2Login - 配置插件参数(API地址、AppID、AppKey等)
- 插件会自动修改系统文件(如失败请参考文档手动修改)
- 修改模板,在合适位置插入标签
文件结构
addons/OAuth2Login/
├── OAuth2Login.php # 插件主文件
├── config.php # 插件配置
├── behavior/
│ └── OAuth2LoginBehavior.php # 行为类(注入JS和样式)
├── controller/
│ └── Oauth.php # API控制器模板
├── SDK/
│ ├── Oauth.class.php # OAuth SDK
│ └── Oauth.config.php # SDK配置
└── static/
├── js/
│ └── oauth.js # 前端JS库
└── image/ # 登录图标
模板标签
{oauth2_login} 标签
安装插件后自动注册,用于在模板中显示第三方登录按钮。
参数:
id:循环变量名(必填)type:按钮类型,login(登录)或bind(绑定),默认loginempty:无数据时显示的内容
可用变量:
| 变量 | 说明 |
|---|---|
{$vo.type} |
登录类型(qq/wechat/alipay等) |
{$vo.name} |
显示名称(QQ/微信/支付宝等) |
{$vo.image} |
按钮图标地址 |
{$vo.url} |
点击事件 |
{$vo.style} |
对应页面的样式内容 |
{$vo.is_bound} |
是否已绑定(仅 type="bind" 时有效) |
{$vo.bound_info.nickname} |
已绑定的第三方昵称(仅已绑定时有效) |
{$vo.bound_info.faceimg} |
已绑定的第三方头像(仅已绑定时有效) |
{$vo.bound_info.bind_time} |
绑定时间戳(仅已绑定时有效) |
{$vo.unbind_url} |
解绑点击事件(仅 type="bind" 时有效) |
使用示例
登录页面:
<div class="common-html-wrap">
<div class="oauth-btns">
{oauth2_login id="vo"}
<a href="{$vo.url}" title="{$vo.name}登录"><img src="{$vo.image}"></a>
{/oauth2_login}
</div>
</div>
用户中心绑定:
<div class="oauth-bind">
<div class="oauth-bind-title">绑定第三方账号</div>
<div class="oauth-bind-list">
{oauth2_login id="vo" type="bind"}
<div class="oauth-bind-item">
<img src="{$vo.image}" alt="{$vo.name}">
<span>{$vo.name}</span>
{if $vo.is_bound}
<span class="bound-info">已绑定:{$vo.bound_info.nickname}</span>
<a href="{$vo.unbind_url}" class="unbind-btn">解绑</a>
{else}
<a href="{$vo.url}" class="bind-btn">绑定</a>
{/if}
</div>
{/oauth2_login}
</div>
</div>
演示


演示网址:瀚海书阁
下载地址:城通网盘 密码:
7627
注意
- 插件会修改系统文件,安装前请备份
application目录,以免修改失败造成不可逆损坏。 - 需删除官方模板中的
{oauth_login id="login"}标签。