我的客户有一个使用WooCommerce电子商务模块的Wordpress网站,并希望该选项能够在他的购物车中共享一个产品。
所以在购物车页面上我有以下代码:
<div class="fb-share-button" data-href="link-to-page-which-will-be-shared" data-width="300" data-type="button"></div>
在header.php中我有这个:
<div id="fb-root"></div>
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
现在它显示了一个不错的小分享按钮 - 我想知道的是,如果用户共享了该页面,共享工具是否返回变量 - 如果是这样,我该如何访问它?
我是否可以在JavaScript中添加一些内容来检查用户是否共享该页面?
在用户共享页面后,将对其购物车应用折扣,为此,我需要能够检查用户是否共享了他或她的产品。
提前致谢。
答案 0 :(得分:2)
一年多前我问了这个问题,并用自己的表格自己弄明白了。我想我会与大家分享我是如何做到这一点的。
首先关闭共享的javascript函数:
function fshare(e){
e.preventDefault();
FB.init({appId: "APP_ID_HERE", status: true, cookie: true});
var share = {
method: 'feed',
link: 'http://domain.com/link-to-page/',
picture: 'http://domain.com/image/me.jpg',
name: 'Name of item',
caption: 'domain.com',
description: 'Check out my page!'
};
FB.ui(share, function(response){
if (typeof response == "undefined") {
// do nothing.
} else {
// submit facebook sharing form
document.forms["facebookshared"].submit();
}
});
}
这里我们在共享项目后提交表单。以下是HTML表单的示例:
<form name="facebookshared" method="POST">
<input type="hidden" name="shared" value="true" />
</form>
以下是检查表单是否已提交的PHP代码:
<?php
// if the facebook shared form is posted proceed
if ($_POST['shared']) {
// perform whatever action you wish to do in between these brackets
}
?>