利用开放接口为phpcms和帝国cms高度定制文章分享按钮
发布时间:2019-05-23 23:41:28作者:魏义齐阅读:()评论:
从5月21日开始所有https站的百度分享都出不来,百度分享的官网做着竞价点开是“很抱歉,您要访问的页面不存在”,也是真任性,其实我们可以利用一些开放的接口结合自己的程序标签高度定制分享按钮,按我的方法分享文章,你就是群里最亮的仔。
目前几乎所有https站的百度分享方案都是来自github上的一个项目:https://github.com/hrwhisper/baiduShare,这个项目三年前就存在了,用专业开发版提供的检测版本的代码检测到我的百度分享版本是2.0,也就是百度分享最起码已经三年没更新了,这也是它出现诸多问题的原因,这些问题比如群发分享的时候有次数限制,到一定次数群发成功但群里不显示、点击分享经常失效,需要点好几次才可以正常拉取。
我们经常用到的分享就是QQ空间、QQ好友、微信和新浪微博,其中微信不是直接分享到朋友圈,而是把当前文章生成二维码,然后微信扫码打开文章再手动分享到朋友圈,感觉微信分享有点多余,本文只说QQ空间、QQ好友和新浪微博的分享,如果你非要做微信分享可以了解下qrcode.js:https://github.com/davidshimjs/qrcodejs,我的代码如下:
帝国cms版:
<p class="share">
<a>分享:</a>
<a href="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=[!--titleurl--]&title=[!--pagetitle--] - [!--class.name--] - <?=$public_r['sitename']?>&desc=[!--smalltext--]&summary=[!--tjyy--]&pics=[!--titlepic--]" target="_blank" title="分享到QQ空间"><img src="[!--news.url--]skin/weiyiqi/images/qzone.png"></a>
<a href="http://connect.qq.com/widget/shareqq/index.html?url=[!--titleurl--]&title=[!--pagetitle--] - [!--class.name--] - <?=$public_r['sitename']?>&desc=[!--smalltext--]&pics=[!--titlepic--]&summary=[!--tjyy--]" target="_blank" title="分享给QQ好友"><img src="[!--news.url--]skin/weiyiqi/images/qqshare.png"></a>
<a href="http://service.weibo.com/share/share.php?url=[!--titleurl--]&title=[!--smalltext--]&pic=[!--titlepic--]&appkey=你的新浪微博appkey" target="_blank" title="分享到新浪微博"><img src="[!--news.url--]skin/weiyiqi/images/sina.png"></a>
</p>
phpcms版:
<p class="share">
<a>分享:</a>
<a href="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url={$url}&title={if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}&desc={$SEO['description']}&summary={$tjyy}&pics={$thumb}" target="_blank" title="分享到QQ空间"><img src="{IMG_PATH}xwblog/qzone.png"></a>
<a href="http://connect.qq.com/widget/shareqq/index.html?url={$url}&title={if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}&desc={$SEO['description']}&pics={$thumb}&summary={$tjyy}" target="_blank" title="分享给QQ好友"><img src="{IMG_PATH}xwblog/qqshare.png"></a>
<a href="http://service.weibo.com/share/share.php?url={$url}&title={$SEO['description']}&pic={$thumb}&appkey=你的新浪微博appkey" target="_blank" title="分享到新浪微博"><img src="{IMG_PATH}xwblog/sina.png"></a>
</p>
说明:
1.原生态的接口看文章https://blog.csdn.net/u014132947/article/details/79660258或者百度自己搜;
2.“tjyy”是我的自定义字段,意为推荐原因,以https://blog.weiyiqi.net/html/dgcms/400.html为例,分享到QQ空间如下:
红框1原本是摘要,现在把摘要挪到红框2的位置,摘要是对一篇文章内容的概括,我觉得展示全更好,红框1的位置因为展现的字数有限,所以我替换成推荐原因,推荐原因本就是一句简短的话,放在此处更合适,即便你不想这么放,点分享前你还可以手动编辑。
分享给QQ好友如下:
有缩略图、有标题、有推荐原因、有说明,这无疑是最好的分享形式。
3.自己做加上使用程序标签的好处就是高度自主化、定制化,用百度分享可能文章有配图它也拉取不到,用标签每篇文章都可以有配图,不至于分享出去的链接前面是空白,大家可根据自己的需求在接口里面调整标签。
4.微信群分享可以把已经分享到QQ空间的分享到微信群,经测试,这样内容展现特别好
5.新浪微博分享有一个appkey,这个appkey需要去新浪微博开放平台申请,打开首页点网站接入
点立即接入,之后有个表单,这个表单填完提交你会收到一封激活邮件,激活后你就有appkey了,到这一步就可以了,后面的审核什么的不用管。
注意事项:
1.假设你的新浪微博用的是QQ号登陆的,那么原生接口http://service.weibo.com/share/mobile.php要替换为http://service.weibo.com/share/share.php,因为不换你点分享到新浪微博的按钮是这样的:
你没有新浪微博的账号,这个页面又没有扫码登陆的按钮,我是用另外一个微博账号先登陆,然后分享再切换成网页版发现的pc分享接口,改为http://service.weibo.com/share/share.php
就可以手机扫码登陆账号了。
2.如果你使用了cdn防盗链或者在网站端用web.config设置了防盗链,那么要将sns.qzone.qq.com、connect.qq.com、service.weibo.com这三个域名加入白名单,否则分享的时候图片出不来。
样式和图标大家可以根据自己的需求来,我就不提供了。
好的分享形式可以让文章的点击率倍增,大家赶快动手制作自己的分享按钮吧。
相关阅读
上一篇:建立带点的文件夹和文件的几个方法下一篇:网站被镜像前后我们应该做什么
原创不易,您的赞助就是博主更新的动力!
赞助请备注,8.88元及以上可在赞助光荣榜留下外链信息。
完全自托管的评论系统
-
东方星雨
-
deanhan
-
1264822519
-
aini3311
-
a1051020101
-
weiyiqi
- 微信内置浏览器如何清除缓存和加速打开网页(4308)
- 封禁ip的两种方法(4240)
- windows10系统下如何彻底卸载phpstudy(2946)
- 使用vpn时,使用百度云加速的网站不能访问的两种解决方法及注意事项(2803)
- 彻底解决win10文件夹右上角出现箭头的方法(2570)
- 前端工程师必须要看的五个个人技术博客(1929)
- 网站被莫名其妙植入广告怎么办(1513)
- 站长必知:各搜索引擎的爬虫UA和禁止抓取的robots写法(1372)
- 多吉云——网站需求一站式解决,附多吉云使用注意事项(1348)
- 网站被镜像怎么办(1338)
- 电脑上的图片和视频不显示缩略图如何解决?(2024-05-05)
- 多吉云——网站需求一站式解决,附多吉云使用注意事项(2023-10-08)
- 使用百度云加速的网站在谷歌浏览器访问主域出现502报错如何解决?(2023-02-27)
- 封ip的五大原则(2023-02-16)
- 你不知道的西部数码省钱妙招(2022-11-15)