Hexo中needmoreshare2分享微信无法加载的解决方法

最近在用hexo建站时,我的一些朋友给我说了无法打开微信分享的问题。我的第一感觉是不是needmoreshare2的微信分享像disqus一样在国内被墙了,后来经过网上查阅资料发现,应该不是墙的问题,而是原来微信生成二维码的api停用了,要企业注册的话需要交钱,我们只是写个人博客的人没这个必要。

在needmoreshare2的github页面中issue一栏里,发现这是个普遍问题,讨论网址如下https://github.com/revir/need-more-share2/issues/4。

其中,有一位Aqua-Dream网友提供了一种解决方法,思路是用百度云盘生成一个指向博客的二维码,这个服务支持https站点。手机微信扫码后进入博客,点击右上角的分享即可分享到朋友圈。具体解决方法如下:

修改themes\next\source\lib\needsharebutton\needsharebutton.js

1
var imgSrc = "https://api.qinco.me/api/qr?size=400&content=" + encodeURIComponent(myoptions.url);

修改为

1
var imgSrc = "https://pan.baidu.com/share/qrcode?w=400&h=400&url=" + encodeURIComponent(myoptions.url);

即可。

我在想可不可以像百度分享一样在二维码旁边加一行字当做使用说明,苦于不懂JavaScript,现在还没想到合适的方法。

参考文献:

  1. Aqua-Dream的博客