【问题标题】:Checking if someone has shared a certain link on Facebook检查某人是否在 Facebook 上分享了某个链接
【发布时间】:2012-01-05 19:26:19
【问题描述】:

对于我的新网站,我想使用我找到的 Facebook 按钮/图标,与标准的类似按钮不同。此外,我更喜欢在 Facebook 上分享喜欢的 URL。因此,我使图标打开了一个弹出窗口,显示 http://facebook.com/sharer/sharer.php 并带有正确的参数。使用 Facebook 图形 API,我成功获取了我的 URL 的共享数量,并使用以下 PHP 脚本(检索)和 JavaScript(显示)将其显示在按钮旁边:

<?php
$fql_query_url = 'https://graph.facebook.com/'
. '/fql?q=SELECT+total_count+FROM+link_stat+WHERE+url="URL_GOES_HERE"';
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_num = substr($fql_query_result, 24);
$fql_query_num = substr($fql_query_num, 0, -3);                  
?>

<script type="text/javascript">
function showShares(){
document.getElementById('fb_count').innerHTML = <?php echo $fql_query_num;?>;
}
</script>

(原始文件还包含一个类似的 Twitter 脚本,为了清楚起见,我在这里省略了它。)

我现在想添加的一个功能是,当人们共享链接时,相应的按钮会在页面加载时变为灰色/非活动状态。我希望这可以使用 FQL 查询和 JavaScript 轻松完成,但我在 http://developers.facebook.com 上找不到它。所以我想知道这里是否有人知道如何做到这一点(如果有任何办法的话......)。

提前致谢!

【问题讨论】:

  • 为什么要使用 FQL,然后你就可以http://graph.facebook.com/?id=http://google.com
  • 还不知道,谢谢。重写了我的函数!
  • 仅适用于也想使用graph.facebook.com/?id=http://google.com 的人:您应该注意的是,如果没有共享,此方法不会显示 0,而是会生成“共享:” - 部分整体消失。您应该添加一个“if”语句以防止出现问题。

标签: php facebook facebook-graph-api facebook-fql


【解决方案1】:

http://facebook.com/sharer/sharer.php 已被弃用。我建议使用 Graph API 或 Facebook 开发的新插件之一来代替它。一旦你开始实施新的东西,你的问题可能会改变。 FWIW,我认为没有办法判断特定用户是否共享了链接(除非它是 Facebook 页面的点赞)。

【讨论】:

  • 我知道有新的 Facebook 插件可以为 URL 点赞。如前所述,我不太喜欢点赞按钮,我更喜欢分享而不是喜欢。但是你并不总是得到你最喜欢的东西;)而且我确实注意到检查某人是否喜欢某件事比做同样的事情来分享要容易得多。但是我自己的按钮比标准 IMO 更适合我的网站。所以我一直在寻找开发部分。不幸的是,我找不到比这个按钮更喜欢的方式。我应该习惯按钮,还是有其他方法可以完成类似操作?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-01
  • 2011-07-18
  • 2015-07-21
  • 2017-05-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多