WP Open Social

WP Open Social,这是一款 WordPress 社交平台登陆插件,个人原创,代码简洁,功能强大!

现在的用户都是超级懒的,我也不例外。如果一个网站动不动要我注册,不管祂的内容和服务有多好,我的内心肯定是抗拒的。要为此创作一个独一无二的账号和一个复杂好记又不雷同的密码,根本就是强人所难。

这个插件就是这样一个初衷:让你的网站用户垂手可得。类似 1Password 的思路,我们每天都会使用 QQ、微博、微信,如今可以将这些账号作为唯一的个人凭证,从而方便的登录各类其他平台和服务。

一开始插件的功能比较简单粗糙,定位是免费开源的。随着很多高级玩家的使用出现了很多应用和生产环境中出现的各种问题:账号过长,邮箱虚假,微博同步,微信打通等。在这个过程中投入了大量的时间和精力,针对各种高级功能发布了收费版。

有了这样一个东东,能大大提升体验和效率,那祂就是有价值的,可持续的,这也是我保持更新的动力。我本人购买了很多正版软件和应用,这是对好作品的支持和肯定;同样,我也希望自己的付出能得到正向的回报。

关于代码,我编程还行,但 PHP 新手;关于界面,我审美还行,但美工一般。信奉体验执着细节,相信只要想得到,肯定还是有很多优化空间的。任何意见建议都欢迎留言,非常感谢大家的支持,谢谢!温馨提示:咨询问题请留下邮箱网站方便联系和回访。

  • 由于 Open Social 跟谷歌一个历史项目重名,为了区分插件改名为:WP Open Social
  • 从 5.0 版本起,代码遵循 MIT 许可协议:可任意修改和使用,在保留许可协议前提下;由插件引起的损失或意外本人概不负责。
  • 5.0版本起,更新前需要先备份 mod 目录,然后手工覆盖更新。如通过系统自动更新的话模块目录会被覆盖掉。

基础功能

  • 主要功能:QQ、微博、微信、谷歌、Facebook、Twitter 等登录和分享
  • 其他特色:支持安全验证、支持登录出错提示、用户列表可查看用户绑定信息
  • 使用环境:无系统环境要求、无第三方库、无加密混淆、无任何网站域名限制

版本说明

最新 5.0 的核心代码统一免费开源,高级模块按需收费。
升级到专业版费用:4.X(免费)、3.X(¥100)、2.X(¥200)。
如旧版自动升级出现问题,请联系我索取新版。

  • 基础版(¥0 ):WordPressGithub,包含兼容模块、包含国内外八个主流社交平台
  • 专业版(¥300):联系我,包含基础功能、包含所有非专属模块
  • 旗舰版(¥? ):包含专属代理模块、支持自动更新

模块介绍

  • 兼容模块(¥0 ):兼容 WooCommerce、BuddyPress 等热门插件,可自定义钩子
  • 冷门平台(¥20 ):拓展国内外各种非主流社交媒体平台如 淘宝支付宝、Pinterest
  • 注册模块(¥50 ):可随机生成、自主填写邮箱、邮箱激活、管理员审核、绑定老用户
  • 微博模块(¥50 ):管理员绑定微博发布文章可同步到微博、可计划发布、可查看结果
  • 短信模块(¥100):支持短信登录、目前支持阿里云云通信短信服务、可查看出错信息
  • 微信模块(¥150):支持公众号订阅登录、生成二维码、自动适配平台、打通用户标识
  • 代理模块(非卖): 高级用户专属、需注册并购买作者平台账号使用权方可使用

代理登录

代理模块为之前的“内置登录”,独立为高级专用功能,以后的新版发布默认不会包含该模块。
针对备案或翻墙或企业资格等无法使用平台登录的用户,可提供体验和专属套餐的购买使用。
建议可搭配注册模块支持设置邮箱激活或修改密码方可登录等方式来另行管理绑定的用户。

  1. 微信开放号及公众号(微信模块所带):¥200/年/每个
  2. 国内外主流社交平台(基础版所带平台):¥100/年/每个
  3. 国内外冷门社交平台(更多平台模块所带):¥50/年/每个

升级步骤

  1. 任何版本升级时先备份插件目录、禁用插件、再删除插件目录
  2. 再将新版上传/解压到原位置、启用插件、插件配置会自动继承

常见问题

0、插件有什么使用场景和限制

这是一个网页插件。如果在手机设备用普通浏览器中浏览,并无法调用移动端应用(如微信客户端)。

1、插件能获取什么用户资料

由于协议限制,大部分第三方登录只能获取用户的昵称和头像,少部分能够获取真实邮箱,所以生产环境中可能需要用户补全具体信息。另外,登陆时最主要的识别依据是具体用户在具体应用(网站)上的唯一编号。

2、回调地址要怎么设置?

新版后台可统一或单独自定义,默认为空即可网站主域名。一般为网站首页,如 https://www.xiaomac.com
QQ互联请添加后缀 /index.php,然后在插件后台设置回调地址形如:http://www.abc.com/index.php
——注意:申请国内第三方登陆可能需要网站备案,如申请确有难度可以购买“代理登录”。

3、在那里获取 App IDAPP Key/Secret

第三方平台的后台。两者叫法大同小异,公开的应用号叫 XXXX_ID;不公开的应用密钥叫 XXXX_KEY/SECRET

4、支持多站点吗?

支持;超级管理员在主站设置,子站自动继承配置。从子站进入并注册的新用户会自动从主站同步到子站。

5、为什么国外谷歌脸书推特等无法登陆?

服务器需要能够科学上网,目前国内空间基本不支持。如果需要请联系我购买“代理登录”。

6、为什么升级新版后某些功能没有生效?

一般是服务器开启了缓存插件或者 CDN 所致,请清空缓存,并刷新重试。

7、微信开放号微信公众号有什么区别?

完全不同。视网站使用人群,开放号是在电脑端(针对电脑群体)用手机扫码来登录;公众号是在手机微信中(针对手机群体)自动登录。插件会自动识别浏览器类型而显示对应的图标。两者可以互相绑定(通过 UnionID)来识别同一微信用户。微信公众号回调地址设置:公众号设置 / 功能设置 / 网页授权域名(开放号叫授权回调域)。

——微信登陆要求:服务号、微信认证
——接口权限要求:网页授权获取用户基本信息(微信登录);生成带参数二维码、获取用户基本信息(关注登录)

8、为什么用户注册时有些卡顿

一般这是服务器发送通知邮件失败引起的,可以尝试安装邮件插件进行配置:WP-Mail-SMTP

9、如何统一已注册用户的路径为编号

安装并启用插件 Debug Editor,运行如下代码:

$users = get_users();
foreach ($users as $user){
    wp_update_user(array('ID' => $user->ID, 'user_nicename' => $user->ID));
}

更新日志

= 5.0.3 =
* 修正:微信公众号登录的显示问题

= 5.0.2 =
* 微信登录在不同平台默认显示
* 增强头像函数的兼容性
* 增加隐藏登录工具条的选项

= 5.0.1 =
* 修复绑定无效并直接跳回首页的BUG

= 5.0 =
* 新增:代码发布遵循 MIT 许可协议
* 优化:代码模块化基础代码不做限制

= 4.3 =
* 新增:同步到微博支持古藤堡编辑器
* 新增:支持调试微信服务器保存出错
* 新增:支持屏蔽无法正常加载的头像
* 修正:激活邮箱登陆模式下提示错误
* 修正:链接字段无效可导致无法保存
* 修正:微信分享弹出框页面样式兼容

项目地址

插件下载:最新测试版(github.com)wordpress.org | open-social.5.0.3

——打个小赏 感谢支持——

1 自动识别支付宝/微信/QQ支付

863 thoughts on “WP Open Social

    1. Link

      是滴,谢谢支持先:)

    1. 壹木拾年

      站长。看到发一份到我邮箱。加微信也一直没回。。这么忙啊。

    2. Link

      今天停电了,已发送:)

  1. 黎振旺

    作者,你好。最近我把博客搬到阿里云的ECS,部署的是WDCP面板。发现插件登录之后返回首页,但是登录没有成功,QQ也没提示已经登录,请问这个是不是nginx下的伪静态规则问题?
    登录页面:http://www.lizhenwang.com/diary 登录之后返回首页,地址栏变成http://www.lizhenwang.com/?connect=qqXXXXXXX 登录不成功
    伪静态我是网上复制的:
    if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
    rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
    rewrite (.*) /index.php;
    }

    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

    1. Link

      跟伪静态没关系。1看QQ互联后台域名设置,2开调试看看。

    2. 黎振旺

      开了调试,好像没有提示错误。网站搬家前还可以的,不是互联的问题问题,现在QQ、新浪、豆瓣都不能登录了。

    3. 黎振旺

      已经确定是服务器环境问题了,正在努力解决中。。。谢谢了

  2. 精英主义

    请问:
    1、插件是否支持wordpress MU多站点?
    2、请问是否有配置文档?

    1. Link

      1、支持 WPMU 多站点
      2、目前未有这东东

  3. WI

    ID和KEY都设置了,前端访问提示:redirect uri is illegal(100010)

  4. 就爱吃牛羊肉

    hi 博主 我用sina的微博登录 输入用户名密码后提示500服务器错误 这是因为设置的问题吗?谢谢!

    1. Link

      开启调试,才能知道具体出错信息。

  5. 灬罗密呕°

    你好,作者,请问可否加入发布文章同步到微博和QQ空间的功能。
    邮箱post发信已失效,急需此功能!

    1. Link

      新版会计划加入这个功能。

  6. zhangcj

    从官方下的版本,微博分享后只有标题和网站名,没有正文的摘要

    1. Link

      你的文章模板不规范,导致脚本按标识没取到内容。

  7. RH唷

    首先感谢博主的插件
    为我们这些草根带来了很大的便利
    我的网站之前更换了域名,QQ互联怎么改都是
    redirect uri is illegal(100010)
    没换之前是没有/的回调地址
    现在加上/也没用
    万分求解_(:з」∠)_

    1. Link

      本文更新了常见问题,请自己先过一下。

  8. Apple

    博主,你的QQ号码到底多少呢?有事咨询。

    1. Link

      《About》页就有啦。

  9. auwhere

    博主QQ怎麼加? 我也遇到一些問題,另外兩個付費版本的區別在哪裡可以看?付款是直接付到支付寶掃碼嗎

    1. Link

      1、About 页就有QQ
      2、付费版还没但即将推出
      3、直接支付宝即可,到时我会收集邮箱统一推送新版下载连接。

  10. 阿赖耶识

    补充: 网页版登陆时 redirect url is illegal (100010)

    手机版 IOS登录时可以登陆 但是回调页是空白

    1. Link

      联系我QQ。

  11. 阿赖耶识

    网址验证通过 但是登录时 redirect uri is illegal(100010)

    尝试了各种各样的回调地址组合 一直没有办法。。。 求助!
    http://tax1on1.org
    http://tax1on1.org/

    1. Link

      我测试倒是反馈:该应用的QQ登录暂未通过腾讯公司审核。

  12. 艺唯思品牌设计

    看来很多人都遇到同样的问题啊。
    redirect uri is illegal(100010)
    试了这种方法,还是这种情况。
    回调地址后面也加了/,还是这种情况。。

  13. ‭夏娜酱拌饭

    放弃了0-0好不容易把部分头像搞出来了 算了吧…
    建议楼主弄一个函数直接通过id输出获取到的头像,否则依赖其他函数,兼容性太差啊。。。
    那都不靠谱。

    1. Link

      既然锲而,就不要舍了。加我QQ沟通吧。你啥信息没提供,我没法提供帮忙啊童鞋。

  14. ‭夏娜酱拌饭

    博主还是得请教你一下0-0
    之前我说有个主题里的头像不显示,我看了一下代码以后发现里面有个filter修改了get_avatar函数
    现在我把那个filter删除了,但是显示的还是默认的get_avatar(),open social里的函数没调用
    我实在想不出来为什么了 博主知道可能是什么原因吗?我也不懂php代码…

  15. 博达恒通

    请问这是什么原因:
    您的网站审核未通过,原因是“点击QQ登录按钮提示登录失败或出现错误信息(无跳转、提示失败、出现错误信息)”,请确认申请符合审核标准后,再提交审核

  16. 博达恒通

    您的网站审核未通过,原因是“点击QQ登录按钮提示登录失败或出现错误信息(无跳转、提示失败、出现错误信息)”,请确认申请符合审核标准后,再提交审核

  17. ‭夏娜酱拌饭

    我看安装插件之后,后台的用户头像是变了,但是用get_avatar函数调用的头像,看网址还是调用gravatar头像,怎么调用插件获取到的头像?

  18. 博达恒通

    你好以愽主,微信分享不了,点击没反应,没生成二维码如何是好?

    1. Link

      新版会弄微信公众号登陆和开放平台登陆,要迟点才发布。

  19. 31号

    能不能把图标美化一下,太复古了。我小白。。。。

    1. Link

      复古本身就是一种美,我也是小白。不过新版打算用 FontAwesome 来做。

  20. 愤怒的抹茶牛奶糖

    不过我的API设置没有显示Enhanced redirection security的选项。
    只有 1.移动或桌面客户端应用: 2.目标域: 3.限制 JWT 发放: 4.根域:(灰的)5.重定向 URL:
    最后的重定向 URL已尝试好多种修改…

    1. Link

      选英文版试试,在3和4之间。就帮你到这吧。

  21. 黎振旺

    感谢博主开发此插件。如果此插件能增加一个功能,只允许绑定Wordpress账号的用户使用open social插件快捷登录就那更好了,这对于博客不对外开放的博主很有帮助。

    1. Link

      这个选项倒是可以考虑加入,也不难做。谢谢你的建议。

  22. 愤怒的抹茶牛奶糖

    OK了!FB的已能用。现在还是没弄好Microsoft的,那个API 设置的重定向 URL有什么特别要求吗,我各种都试过不行..错误页的地址栏上看着像是URL问题..

    1. Link

      看了下:Enhanced redirection security 选 Disabled 即可。
      高安全性需要精准的回调连接,我这个是多登陆,需用参数判断,所以不适合。

  23. 愤怒的抹茶牛奶糖

    首先直接在Godaddy的主机建wp试了下,G+能登陆了,Microsoft还是老样子,但是FB..

    Notice: Undefined index: username in /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php on line 574

    Notice: Undefined index: link in /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php on line 576

    Notice: Undefined index: email in /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php on line 577

    Warning: Cannot modify header information – headers already sent by (output started at /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php:574) in /home/bendyxz/public_html/blog/wp-includes/pluggable.php on line 935

    Warning: Cannot modify header information – headers already sent by (output started at /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php:574) in /home/bendyxz/public_html/blog/wp-includes/pluggable.php on line 936

    Warning: Cannot modify header information – headers already sent by (output started at /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php:574) in /home/bendyxz/public_html/blog/wp-includes/pluggable.php on line 937

    Warning: Cannot modify header information – headers already sent by (output started at /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php:574) in /home/bendyxz/public_html/blog/wp-content/plugins/open-social/open-social.php on line 807

    1. Link

      574行的$user[‘username’]改为$user[‘name’]吧,FB接口更新了。
      然后几个国外的我本地HOST+VPN测试过了,都可以登陆。

  24. 愤怒的抹茶牛奶糖

    喔喔,就是第一行是总代理,下面几行是分别对应的么。我去外国主机建个代理试试

  25. 愤怒的抹茶牛奶糖

    主机是国内的哎,那个插件设置里的代理地址那几行是怎么用的呢?填反向代理?

    1. Link

      是的。可以设置总的代理,也可以设置具体域名的反向代理。

  26. 愤怒的抹茶牛奶糖

    哎,难道自己开了能直接上的vpn都不行..但还是需要Facebook、Twitter,我再找找别的。。

    1. Link

      你是自己做的主机么,那另当别论。否则你再换啥插件都没用。如果确认服务器能翻墙,发连接来看看吧。

  27. 愤怒的抹茶牛奶糖

    在wp上找到这插件,相当不错啊。但是我弄G+和M$的登陆搞了半天都不行…G+是返回了信息后没有注册到帐号,URL卡了,直接回到原来的页面,并没有登陆。M$的情况是认证不了,尝试了各种redirect_uri都没法,提示技术问题。真是跪给这俩了..

    1. Link

      国外的几个登陆需要服务器能翻墙,不建议折腾。
      实际上,极少极少人会用到。我自己都取消了。

  28. Mike

    請問 500 internal server error 通常是什麼問題呢?

    1. Link

      开了调试来看吧。500错误有很多可能。

  29. Mike

    微信登入 掃描後網站就不動了 請問是什麼問題呢?
    http://www.travelmaker.com.cn/my-account/

    1. Link

      你网站自定义了不少东西,空白是报错了,自己开调试模式看看是什么信息。

  30. Link

    @爱CG网 抱歉,是个小BUG,后面准备做减法,这些冷门好少留意。我直接更新了1.6.3版本。

  31. 爱CG网

    首先感谢开发者开发这程序!非常感谢。
    出现一个一个问题,我网站www.wenshanjun.com。申请了小米登陆,但是登陆了返回了首页。不知道为什么。其他都正常。回调地址也加了斜杠。

  32. 矢左

    @Afly 第一个网站地址后面加” / “验证无法通过,验证错误103001!!!
    但是我用一个字域试了一下,两个地址都加斜杠却是对的,搞不懂了???

  33. 旅神TravelMaker

    請問申請QQ登入的那邊,一直審核未通過,訊息是
    “点击QQ登录按钮提示登录失败或出现错误信息(无跳转、提示失败、出现错误信息)”
    這邊open social需要做什麼相對應的調整嗎?
    要怎麼樣可以審核通過呢?

    1. Link

      通过审核不难,根据官方文档试试吧。错误信息不足无法判断什么问题。

  34. 矢左

    @Afly
    微信登录是需要认证才行的对吧?

    1. Link

      全部都带斜杠的就对了;是的,微信需要付费认证。

  35. 矢左

    QQ登录的「回调地址」比「网站地址」多加了一个“ / “但是还是“redirect uri is illegal(100010) ”

  36. Link

    ——网站已开通微信登陆!欢迎试用。

  37. DoYourGame

    @Afly
    您好,我的网站使用QQ登陆时依旧出现了redirect uri is illegal(100010) 的信息,我在QQ互联填写的网站地址是http://www.XXXXX.com 在回调地址填写的是http://www.XXXX.com 然后出错,后来我又按照某帖子说的编辑open_social.php,把QQ_CLASS里的home_url(‘/’)改成了home_url() ;无果,所以又改回去了。后面我又在QQ互联里面把回掉地址写成http://www.XXXXX.com/?connect=qq&action=callback 提示我填写不规范写成这样,也提示我不规范,http://www.XXXXX.com/%3Fconnect%3Dqq%26action%3Dcallback 。 我的wordpress站点是WordPress放在子目录而地址显示根目录的方法来制作的。 实在是没辙了,不知道该怎么办~

    1. Link

      回调地址统一为:http://www.abc.com/,末尾带斜杠。

  38. 阿智

    确实装了缓存插件,我关了试试

    至于那些重复账号,要不要删掉?

    谢谢

    1. Link

      数据库用户名是唯一的,你这个情况确实超奇怪。删除吧,没什么影响的。

  39. 阿智

    还有,登陆不上的人再登陆有时会提示:这个账号已经被其他用户绑定。

    1. Link

      你网站开启了某种缓存,导致有时无法正常刷新登陆状态。
      我现在登陆和绑定无区分,重复登陆就会报这个错。

  40. 阿智

    1、点qq登陆按钮
    2、跳转到http://openapi.qzone.qq.com网站
    3、点击快速登录的qq头像
    4、然后跳转回网站,但还是显示未登录状态

    chrome、ie都不行,没有报错

    后台多出许多相同的账号,如图 http://cncsgo.com/wp-content/uploads/2015/10/20151012195110.png

    部分人正常

  41. Link

    @阿智
    问题没说清楚。用啥登陆,报什么。怎样相同账号法。

  42. 阿智

    你好,又发现问题,我和几个朋友登陆网站没有问题,但有个别几个登陆后跳转还是没有登陆的状态,登陆几次都不行,后台生成了好多相同的账号

    请问如何解决