跟踪我们博客中每篇文章的全球“分享”会很棒。这就是我想要做的。
- 在 WordPress 中工作
- 使用 Jetpack/Sharedaddy 社交媒体计数器
- 创建一个 Jquery 侦听器来检测用户何时单击共享按钮
- 计算我们正在使用的 3 个主要社交媒体渠道(Facebook、Reddit 和 Twitter)中已经统计的分享数量,并保存到自定义元字段
我使用“AddThis”插件让这一切工作得很好,但是我注意到插件的每个新更新似乎都会带来安全问题以及加载外部跟踪脚本(WTF !!??!?),从而实现无法使用。作为记录,“urldefense.proofpoint.com”是加载“AddThis”导致延迟的外部域。出于这些原因,我们转向了 Wordpress/ShareDaddy,虽然看起来不那么漂亮,但更稳定,并且不会加载大量外部跟踪脚本。
我在使用 ShareDaddy/Jetpack Share 插件时面临的问题是,每个社交媒体图标和计数器都嵌入在 iframe 中,这些 iframe 在主页加载后加载,这使得检测点击和计算 html 值变得很棘手。所以插件渲染的HTML是这样的......
<li class="share-twitter">
<div class="twitter_button">
<iframe frameborder="0" style="width:101px; height:20px;" src="http://platform.twitter.com/widgets/tweet_button.html?url=#" scrolling="no" allowtransparency="true">
<!DOCTYPE html>
<html lang="en" data-scribe="page:button">
<head>
<body class=" regular hcount ltr ready count-ready" data-scribe="section:share">
<div id="widget">
<div class="btn-o" data-scribe="component:button" style="width: 58px;">
<div id="c" class="count-o enabled" data-scribe="component:count">
<i></i>
<u></u>
<a id="count" href="https://twitter.com/search?ref_src=twsrc%5Etfw&q=#">0</a>
</div>
</div>
从使用 Twitter 作为示例检测这些社交媒体图标上的“点击”开始......似乎无法引用几次尝试使用 Jquery 调用,就像这样......
jQuery(document).ready(function() {
// add listener to share this buttons
jQuery('div.twitter_button').click(function(){
alert("twitter");
return false;
});
jQuery('div.twitter_button').on( "click", function() {
alert("twitter");
return false;
});
jQuery('div.twitter_button #widget').click(function(){
alert("twitter");
return false;
});
jQuery('body').on('click','div.twitter_button',function(){
alert("twitter");
return false;
});
});
也在主 Jquery (document).ready(function
jQuery('body').on('click','div.twitter_button',function(){
alert("twitter");
return false;
});
还尝试绑定 iframe 窗口本身的加载
jQuery("div.twitter_button iframe").on("load", function () {
// do something once the iframe is loaded
jQuery('body').on('click','div.twitter_button',function(){
alert("twitter");
return false;
});
});
“返回错误;” 是试图阻止插件脚本干扰警报。任何有关如何“收听”社交媒体按钮的帮助将不胜感激。提前感谢您的反馈。S。