通过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=$pic shareID 分享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接口,所以试着做了做,果然,跌 ...
随机推荐
- Python简单小程序练习
1.九九乘法表 #!/usr/bin/python for i in range(1,10): for j in range(i): j += 1 print ("%d * %d = %-2 ...
- 第四章:Python基础の快速认识內置函数和操作实战
本課主題 內置函数介紹和操作实战 装饰器介紹和操作实战 本周作业 內置函数介紹和操作实战 返回Boolean值的內置函数 all( ): 接受一個可以被迭代的對象,如果函数裡所有為真,才會真:有一個是 ...
- ajax写登录页面
静态配置 STATICFILES_DIRS = ( os.path.join(BASE_DIR,'my_blog','static'), ) AUTH_USER_MODEL = "app01 ...
- 常见的DBCP连接池配置
项目中使用mybatis出现一个问题,项目刚启动时,查询项目列表是ok的,过上一段时间之后,再次查询项目列表,查询失败,初步判断是因为mysql的连接问题,最后查阅资料,发现是连接池中的连接失效,导致 ...
- 编写OC高质量的代码的有效方法
1. 写这个只是为了自己记忆,有相关pdf文件,如需要留下邮箱.. 2. 在类的头文件中尽量少引入其他头文件 除非确有必要,否则不要引入头文件.一般来说,应在某个类的头文件中使用向前声明来提及别的类( ...
- 【转载】MySQL · 性能优化· InnoDB buffer pool flush策略漫谈
背景 我们知道InnoDB使用buffer pool来缓存从磁盘读取到内存的数据页.buffer pool通常由数个内存块加上一组控制结构体对象组成.内存块的个数取决于buffer pool inst ...
- Jenkins-Dingding Notification Plugin 配置
具体内容请移步Jenkins官网或作者Github,本文仅为实践分享,记录几个小坑! 感谢插件作者的贡献! 转载注明出处:http://www.cnblogs.com/ityoung/p/648915 ...
- 正则表达式中的 \b 什么意思?
以前经常看到类似这样的正则表达式:\bhi\b 不知道什么意思,今天特意去查了下. 原来\b是正则表达式规定的一个特殊代码,也叫元字符,\b代表着单词的开头或结尾,也就是单词的分界处.
- springMvc项目的搭建,暂时没有整合持久层框架(java Config配置对比xml配置)
public class WebInit implements WebApplicationInitializer { @Override public void onStartup(ServletC ...
- Java关于使用“final”修饰基本类型的注意事项
今天无意发现这样一道题,可以先做做看: 正确答案是BCD. 至于原因有人给出了参考答案: 1.所有的byte,short,char型的值将被提升为int型: 2.如果有一个操作数是long型,计算结果 ...