通过JiaThis API接口自定义分享功能按钮实现分享功能本地化
http://www.mdaima.com/jingyan/20.html
最早李雷博客采用的是百度分享插件,为此还发过博文讲解如何在一个页面调用多个按钮分享不同的文章,感兴趣的朋友可以在本站搜索一下。但是最近发现网页加载的时候经常出现卡顿现象,研究半天居然是百度分享按钮加载缓慢拖了后腿,严重影响用户体验。所以,下决心取代这个骄傲自居的家伙,网上找了好久,最后发现JiaThis有专门的API分享外链接调用接口。详细研究了一下,发现真的是可以解决困扰我很久的问题,彻底摆脱网页加载的时候调用除自己服务器以外的第三方外链JS脚本,避免了因外链服务器响应缓慢影响到自己网站的加载速度,现在把这个办法分享给大家。
先看看JiaThis
API接口说明:
想在某些动态程序(比如PHP)中调用分享接口,建议可以直接调用我们的API接口,使用JiaThis提供的分享接口,你可以不必再关心众多社会化媒体网站字符编码、各不相同的分享接口,网站访问者最喜欢分享到那些媒体网站等等。同时,作为网站主,你又必须要了解:哪些文章被分享的次数多?分享到哪些媒体?分享后返回到本站的社会化流量数据又是多少?…等等,而这一切,只需要JiaThis一个标准统一的接口就可以为你全部解决。
JiaThis API
标准格式如下:
http://www.jiathis.com/send/?webid=shareID&url=$siteUrl&title=$siteTitle&uid=$uid&summary=$summary&pic=$picshareID 分享ID参数代表你要分享到哪个站点的ID编号, 可以通过这个文档查询:分享网站ID清单 $siteUrl 参数代表你要分享的网站链接地址,可以通过动态程序调用 $siteTitle 参数代表你要分享的网站页面标题,可以通过动态程序调用,也可自定义。$uid(非必须) 代表你注册JiaThis的会员UID,可以登录网站后查到您的UID,用于数据统计。$summary 定义要分享页面的摘要,摘要默认为Meta标签中Description部分的内容$pic 支持新浪微博、腾讯微博、搜狐微博、网易微博,可以自定义分享的图片,如果此值为空,将会根据社会化媒体原有的抓图机制来获取您网站的图片。 |
举例1:分享到开心网代码
http://www.jiathis.com/send/?webid=kaixin001&url=http://www.mdaima.com&title=码代码-李雷博客 |
举例2:分享到QQ空间代码
http://www.jiathis.com/send/?webid=qzone&url=$siteUrl&title=$siteTitle |
这样的格式比起直接调用各个网站的接口来,使用更方便,代码维护更简单。
JiaThis支持的分享到网站(WEBID与对应网站关系)
QQ空间 qzone http://qzone.qq.com 新浪微博 tsina http://weibo.com 微信 weixin http://weixin.qq.com/ 腾讯微博 tqq http://v.t.qq.com/ 搜狐微博 tsohu http://t.sohu.com 人人网 renren http://www.renren.com 飞信 feixin http://feixin.10086.cn QQ好友 cqq http://connect.qq.com/ 百度贴吧 tieba http://tieba.baidu.com 淘江湖 taobao http://i.taobao.com 豆瓣 douban http://www.douban.com 开心网 kaixin001 http://www.kaixin001.com 网易微博 t163 http://t.163.com MSN msn http://cn.msn.com/ |
接下来给大家一个具体一点例子,李雷博客最新的分享功能就是用下面的方法:
JS脚本的设置:
function share_mdaima(webid,url,title,summary,pic){ //这里面除了webid必填,其它的url,title,summary,pic均可以选填,下面也设置了为空时的默认值,大家根据具体需要进行修改吧 if (url==''){var url=window.location.href;} if (title==''){var title="码代码-PHP技术经验教程分享-李雷博客";} if (pic==''){var pic="http://www.mdaima.com/images/logo.gif";} if (summary==''){var summary="码代码,李雷博客,是博主多年PHP实战开发经验的积累,通过简洁的说明文字、功能示例、教程视频,分享博主大量的PHP开发经验及编程技巧,提供给开发人员学习和借鉴!"} //可以利用JQ的AJAX动态调用,将参数传给PHP写入数据库,为站长统计提供便利 //var ajax_bdshare=$.post("/share_jilu.php?i="+Math.random(),{webid:webid,url:url}); var share_url="http://www.jiathis.com/send/?webid="+webid+"&url="+url+"&title="+title+"&summary="+summary+"&pic="+pic+""; window.open(share_url); }; |
CSS样式的设置:
.bds_qzone_0_32{ float:left;background:url(/images/share/icons_0_32.png);background-position:0 -52px; height:32px; width:32px; cursor:pointer; margin:0 10px;}.bds_qzone_0_32:hover{opacity:.8;filter:alpha(opacity=80)}.bds_tsina_0_32{ float:left;background:url(/images/share/icons_0_32.png);background-position:0 -104px; height:32px; width:32px; cursor:pointer;margin:0 10px;}.bds_tsina_0_32:hover{opacity:.8;filter:alpha(opacity=80)}.bds_tqq_0_32{ float:left;background:url(/images/share/icons_0_32.png);background-position:0 -260px; height:32px; width:32px; cursor:pointer;margin:0 10px;}.bds_tqq_0_32:hover{opacity:.8;filter:alpha(opacity=80)}.bds_renren_0_32{ float:left;background:url(/images/share/icons_0_32.png);background-position:0 -208px; height:32px; width:32px; cursor:pointer;margin:0 10px;}.bds_renren_0_32:hover{opacity:.8;filter:alpha(opacity=80)}.bds_weixin_0_32{ float:left;background:url(/images/share/icons_0_32.png);background-position:0 -1612px; height:32px; width:32px; cursor:pointer;margin:0 10px;}.bds_weixin_0_32:hover{opacity:.8;filter:alpha(opacity=80)} |
页面调用按钮:
<</code>div class="bds_qzone_0_32" onclick="share_mdaima('qzone','具体URL地址','标题','描述','图片')" ></</code>div><</code>div class="bds_tsina_0_32" onclick="share_mdaima('tsina','','','','')"></</code>div><</code>div class="bds_tqq_0_32" onclick="share_mdaima('tqq','','','','')"></</code>div><</code>div class="bds_renren_0_32" onclick="share_mdaima('renren','','','','')"></</code>div><</code>div class="bds_weixin_0_32" onclick="share_mdaima('weixin','','','','')"></</code>div>通过JiaThis API接口自定义分享功能按钮实现分享功能本地化的更多相关文章
- 微博api接口登陆,获取信息,分享微博
import json from datetime import datetime import MySQLdb import requests from flask import Flask, re ...
- [Swift通天遁地]二、表格表单-(7)电子邮件Mail:实现单元格左右滑动调出功能按钮
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- bugzilla4的xmlrpc接口api调用实现分享: xmlrpc + https + cookies + httpclient +bugzilla + java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能
xmlrpc . https . cookies . httpclient.bugzilla . java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能,网上针对bugzilla的实现很 ...
- c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等
如果一个后端开发掌握了微信开发,甚至有微信开发上线项目,这在换工作的时候 还是有竞争力的. 微信开发的资料很多,但是用asp.net c#进行微信开发好像比较少,或者资料不够完整. 使用JS-SDK自 ...
- 分享几个在线生成网址二维码的API接口
现在很多大网站都有这样的一个功能,使用手机扫描一下网页上的二维码便可快速在手机上访问网站.想要实现这样的功能其实很简单,下面麦布分享几个在线生成网址二维码的API接口.都是采用http协议接口,无需下 ...
- php框架tp3.2.3和js写的微信分享功能心得,分享的标题内容图片自定义
https://blog.csdn.net/weixin_42231483/article/details/81585322 最近用PHP的tp3.2.3框架和js写的微信分享功能心得,分享的标题内容 ...
- Postman - 功能强大的 API 接口请求调试和管理工具
Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...
- 分享2个网址二维码API接口
分享2个网址二维码生成API接口,用它们只需要填写好网址就能自动生成二维码,分别来自与bshare和jiathis分享工具中,如您需要就把下面的二维码生成API接口复制到你需要地方. 说明:把url= ...
- 微信js接口自定义分享内容
最近客户有个要求,需要给网页添加微信分享功能,当然指的是用微信自带浏览器的时候,希望用户在最后一页点击分享的时候是分享的首页.曾经无意中看到过微信公众开发者平台提供了js接口,所以试着做了做,果然,跌 ...
随机推荐
- JDK动态代理[4]----ProxyGenerator生成代理类的字节码文件解析
通过前面几篇的分析,我们知道代理类是通过Proxy类的ProxyClassFactory工厂生成的,这个工厂类会去调用ProxyGenerator类的generateProxyClass()方法来生成 ...
- Tengine 安装配置全过程(nginx 同理)
1.安装必要的编译环境好 yum update yum install gcc gcc-c++ autoconf automake 2.安装需要的组件 A.PCRE PCRE(Perl Compati ...
- MVC框架实例构建
转自:http://www.cnblogs.com/levenyes/p/3290885.html MVC全名是Model View Controller,是模型(model)-视图(view)-控制 ...
- golang 最和谐的子序列
We define a harmonious array is an array where the difference between its maximum value and its mini ...
- JS大小写字母转换
var a = "ABCd"; console.log(a.toLowerCase());//转换成小写 console.log(a.toUpperCase());//转换成大写
- JS中typeof和instanceof用法区别
typeof和instanceof都可以用来判断变量 1.typeof用以获取一个变量或者表达式的类型,typeof一般只能返回如下几个结果: number,boolean,string,functi ...
- JS 对象API之判断自有属性、共有属性
自有属性:对象实例私有的属性,只有该对象实例可用 共有属性:对象实例共有的属性,所有对象实例都可用 要判断对象实例的自有属性.共有属性:首先看看JS给我们提供的两个方法: 1.判断是否是对象实例的属性 ...
- python基础(四)字符串处理
字符串处理 msg = 'my name is sylar' capitalize方法,将字符串的首字母大写 print 'capitalize方法:', msg.capitalize() swapc ...
- windows系统下使用cd命令
如果要切换到D:\Program Files目录下,大多数人会想当然的在命令行窗口输入 cd D:\Program Files回车. 如下所示: 发现并没有切换到D:\Program Files. 正 ...
- JDK1.8中HashMap实现
JDK1.8中的HashMap实现跟JDK1.7中的实现有很大差别.下面分析JDK1.8中的实现,主要看put和get方法. 构造方法的时候并没有初始化,而是在第一次put的时候初始化 putVal方 ...