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_32float:left;background:url(/images/share/icons_0_32.png);background-position:0 -52pxheight:32pxwidth:32pxcursor:pointermargin:0 10px;}
.bds_qzone_0_32:hover{opacity:.8;filter:alpha(opacity=80)}
.bds_tsina_0_32float:left;background:url(/images/share/icons_0_32.png);background-position:0 -104pxheight:32pxwidth:32pxcursor:pointer;margin:0 10px;}
.bds_tsina_0_32:hover{opacity:.8;filter:alpha(opacity=80)}
.bds_tqq_0_32float:left;background:url(/images/share/icons_0_32.png);background-position:0 -260pxheight:32pxwidth:32pxcursor:pointer;margin:0 10px;}
.bds_tqq_0_32:hover{opacity:.8;filter:alpha(opacity=80)}
.bds_renren_0_32float:left;background:url(/images/share/icons_0_32.png);background-position:0 -208pxheight:32pxwidth:32pxcursor:pointer;margin:0 10px;}
.bds_renren_0_32:hover{opacity:.8;filter:alpha(opacity=80)}
.bds_weixin_0_32float:left;background:url(/images/share/icons_0_32.png);background-position:0 -1612pxheight:32pxwidth:32pxcursor: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接口自定义分享功能按钮实现分享功能本地化的更多相关文章

  1. 微博api接口登陆,获取信息,分享微博

    import json from datetime import datetime import MySQLdb import requests from flask import Flask, re ...

  2. [Swift通天遁地]二、表格表单-(7)电子邮件Mail:实现单元格左右滑动调出功能按钮

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  3. bugzilla4的xmlrpc接口api调用实现分享: xmlrpc + https + cookies + httpclient +bugzilla + java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能

    xmlrpc .  https . cookies . httpclient.bugzilla . java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能,网上针对bugzilla的实现很 ...

  4. c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等

    如果一个后端开发掌握了微信开发,甚至有微信开发上线项目,这在换工作的时候 还是有竞争力的. 微信开发的资料很多,但是用asp.net c#进行微信开发好像比较少,或者资料不够完整. 使用JS-SDK自 ...

  5. 分享几个在线生成网址二维码的API接口

    现在很多大网站都有这样的一个功能,使用手机扫描一下网页上的二维码便可快速在手机上访问网站.想要实现这样的功能其实很简单,下面麦布分享几个在线生成网址二维码的API接口.都是采用http协议接口,无需下 ...

  6. php框架tp3.2.3和js写的微信分享功能心得,分享的标题内容图片自定义

    https://blog.csdn.net/weixin_42231483/article/details/81585322 最近用PHP的tp3.2.3框架和js写的微信分享功能心得,分享的标题内容 ...

  7. Postman - 功能强大的 API 接口请求调试和管理工具

    Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...

  8. 分享2个网址二维码API接口

    分享2个网址二维码生成API接口,用它们只需要填写好网址就能自动生成二维码,分别来自与bshare和jiathis分享工具中,如您需要就把下面的二维码生成API接口复制到你需要地方. 说明:把url= ...

  9. 微信js接口自定义分享内容

    最近客户有个要求,需要给网页添加微信分享功能,当然指的是用微信自带浏览器的时候,希望用户在最后一页点击分享的时候是分享的首页.曾经无意中看到过微信公众开发者平台提供了js接口,所以试着做了做,果然,跌 ...

随机推荐

  1. Python简单小程序练习

    1.九九乘法表 #!/usr/bin/python for i in range(1,10): for j in range(i): j += 1 print ("%d * %d = %-2 ...

  2. 第四章:Python基础の快速认识內置函数和操作实战

    本課主題 內置函数介紹和操作实战 装饰器介紹和操作实战 本周作业 內置函数介紹和操作实战 返回Boolean值的內置函数 all( ): 接受一個可以被迭代的對象,如果函数裡所有為真,才會真:有一個是 ...

  3. ajax写登录页面

    静态配置 STATICFILES_DIRS = ( os.path.join(BASE_DIR,'my_blog','static'), ) AUTH_USER_MODEL = "app01 ...

  4. 常见的DBCP连接池配置

    项目中使用mybatis出现一个问题,项目刚启动时,查询项目列表是ok的,过上一段时间之后,再次查询项目列表,查询失败,初步判断是因为mysql的连接问题,最后查阅资料,发现是连接池中的连接失效,导致 ...

  5. 编写OC高质量的代码的有效方法

    1. 写这个只是为了自己记忆,有相关pdf文件,如需要留下邮箱.. 2. 在类的头文件中尽量少引入其他头文件 除非确有必要,否则不要引入头文件.一般来说,应在某个类的头文件中使用向前声明来提及别的类( ...

  6. 【转载】MySQL · 性能优化· InnoDB buffer pool flush策略漫谈

    背景 我们知道InnoDB使用buffer pool来缓存从磁盘读取到内存的数据页.buffer pool通常由数个内存块加上一组控制结构体对象组成.内存块的个数取决于buffer pool inst ...

  7. Jenkins-Dingding Notification Plugin 配置

    具体内容请移步Jenkins官网或作者Github,本文仅为实践分享,记录几个小坑! 感谢插件作者的贡献! 转载注明出处:http://www.cnblogs.com/ityoung/p/648915 ...

  8. 正则表达式中的 \b 什么意思?

    以前经常看到类似这样的正则表达式:\bhi\b 不知道什么意思,今天特意去查了下. 原来\b是正则表达式规定的一个特殊代码,也叫元字符,\b代表着单词的开头或结尾,也就是单词的分界处.

  9. springMvc项目的搭建,暂时没有整合持久层框架(java Config配置对比xml配置)

    public class WebInit implements WebApplicationInitializer { @Override public void onStartup(ServletC ...

  10. Java关于使用“final”修饰基本类型的注意事项

    今天无意发现这样一道题,可以先做做看: 正确答案是BCD. 至于原因有人给出了参考答案: 1.所有的byte,short,char型的值将被提升为int型: 2.如果有一个操作数是long型,计算结果 ...