在一个页面中显示 Facebook 点赞(分享)
Present Facebook likes (shares) in one page
我的网站包含一个搜索结果页面,其中显示了有关搜索地点(例如酒店)的基本信息:
- 地点 1:
- 地址 YYY
- 可用性 3
- 价格:999$
- 地点 2:
- 地址 YXV
- 可用性 1
- 价格:99$
等等
点击一个地方会呈现一个详细的信息页面。
在详细信息页面中,有用户点击的 Facebook Like 和 G+ 按钮(还显示了有关该地点目前获得多少赞的信息)。
我的问题是:
我可以在每个地方的搜索页面的详细信息页面中显示(只显示而不允许点击)喜欢的数量吗?
想要的结果是:
- 地点 1:
- 667 个赞,23 个 G+ <-此信息来自 Place 1 详细信息页面
- 地址 YYY
- 可用性 3
- 价格:999$
- 地点 2:
- 777 个赞,44 个 G+ <-此信息来自 Place 2 详细信息页面
- 地址 YXV
- 可用性 1
- 价格:99$
我在 VS、.NET MVC 中开发。
如果能得到详细的回答,我将不胜感激。
谢谢。
我无法为我的确切问题(在 MVC 中工作)找到完整的答案,所以我发布了我的解决方案,顺便说一句,它非常有效。
视图呈现外部 divs,每个包含一些数据的地方一个。每个 dive 实际上是一个表格。我将输入和计数器 div 放在外面的里面:
<div>
<input class="likes1" type="hidden" id="institueId" value="SpecificPlaceUrl" data-link="" />
<div class="likes2" id=@resultsId>
</div>
</div>
然后这个 countFacebookLikes 函数(最好延迟到页面完全加载)循环遍历 divs
function countFacebookLikes() {
$('.likes2').each(function () {
var $currentForm = $(this).closest('.enterFormClass');
var token = 'yyyyyyyyyyy|xxxxxxxxxxxx',
resultsId = $('.likes1',$currentForm).val(),
urlName = resultsId;
$.ajax({
url: 'https://graph.facebook.com/v2.7',
dataType: 'jsonp',
type: 'GET',
data: { access_token: token, id: urlName },
success: function (data) {
if (data !=undefined && data.share != undefined)
{
$('#results' + resultsId).html('<span class="YourRelevantClasses" style="YourRelevantStyles">' + data.share.share_count + ' ' + '<i class="fa fa-thumbs-up">' + ' ' + '<i class="fa fa-facebook-square" >' + '</span>');
}
}
});
});
};
1) 可以将 Facebook 数据参数更改为 he/she 想要计算的任何值 - 总数、分享等
2) 对于多个 urls,在 Whosebug 和其他使用 https://graph.facebook.com/?ids=url1,url2 等的地方有问答。这可能对某些人有用,但对我来说它没有用,因为数量太多url 秒和每次重建特定 url 字符串的工作。
我的网站包含一个搜索结果页面,其中显示了有关搜索地点(例如酒店)的基本信息:
- 地点 1:
- 地址 YYY
- 可用性 3
- 价格:999$
- 地点 2:
- 地址 YXV
- 可用性 1
- 价格:99$
等等
点击一个地方会呈现一个详细的信息页面。 在详细信息页面中,有用户点击的 Facebook Like 和 G+ 按钮(还显示了有关该地点目前获得多少赞的信息)。
我的问题是: 我可以在每个地方的搜索页面的详细信息页面中显示(只显示而不允许点击)喜欢的数量吗?
想要的结果是:
- 地点 1:
- 667 个赞,23 个 G+ <-此信息来自 Place 1 详细信息页面
- 地址 YYY
- 可用性 3
- 价格:999$
- 地点 2:
- 777 个赞,44 个 G+ <-此信息来自 Place 2 详细信息页面
- 地址 YXV
- 可用性 1
- 价格:99$
我在 VS、.NET MVC 中开发。
如果能得到详细的回答,我将不胜感激。
谢谢。
我无法为我的确切问题(在 MVC 中工作)找到完整的答案,所以我发布了我的解决方案,顺便说一句,它非常有效。
视图呈现外部 divs,每个包含一些数据的地方一个。每个 dive 实际上是一个表格。我将输入和计数器 div 放在外面的里面:
<div>
<input class="likes1" type="hidden" id="institueId" value="SpecificPlaceUrl" data-link="" />
<div class="likes2" id=@resultsId>
</div>
</div>
然后这个 countFacebookLikes 函数(最好延迟到页面完全加载)循环遍历 divs
function countFacebookLikes() {
$('.likes2').each(function () {
var $currentForm = $(this).closest('.enterFormClass');
var token = 'yyyyyyyyyyy|xxxxxxxxxxxx',
resultsId = $('.likes1',$currentForm).val(),
urlName = resultsId;
$.ajax({
url: 'https://graph.facebook.com/v2.7',
dataType: 'jsonp',
type: 'GET',
data: { access_token: token, id: urlName },
success: function (data) {
if (data !=undefined && data.share != undefined)
{
$('#results' + resultsId).html('<span class="YourRelevantClasses" style="YourRelevantStyles">' + data.share.share_count + ' ' + '<i class="fa fa-thumbs-up">' + ' ' + '<i class="fa fa-facebook-square" >' + '</span>');
}
}
});
});
};
1) 可以将 Facebook 数据参数更改为 he/she 想要计算的任何值 - 总数、分享等
2) 对于多个 urls,在 Whosebug 和其他使用 https://graph.facebook.com/?ids=url1,url2 等的地方有问答。这可能对某些人有用,但对我来说它没有用,因为数量太多url 秒和每次重建特定 url 字符串的工作。