我想在网站上展示Faceboo Fanbox,但前提是当前用户不是我们FB页面的粉丝。有没有办法检测用户是否是某个页面的粉丝,然后显示风扇箱?
答案 0 :(得分:4)
不,我很确定这是不可能的。为了能够做到这一点,你会
如果可能的话,想象一下有些人的强烈抗议......
答案 1 :(得分:0)
对于基于PHP的网站,可以这样做:
1-创建一个新的Facebook应用here。
2 - 从here下载Facebook PHP SDK。提取文件并将其放在与您将粘贴下面代码的文件相同的文件夹中!
3 - 使用此tool获取您的Facebook页面ID。
4 - 从here为您的网页生成类似Facebook的框代码。
完成1,2,3和4步后,您可以使用以下代码检查用户是否喜欢某个页面:
<?php
require('facebook.php');
$config = array(
'appId' => 'your facebook app id',
'secret' => 'your facebook app secret code',
'allowSignedRequest' => false
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();
if (isset($user_id)) {
try {
$likes = $facebook->api('/me/likes/your_facebook_page_id_here', 'GET');
if (!empty($likes['data'])) // if user has liked the page then $likes['data'] wont be empty otherwise it will be empty
{
echo 'Thank you for liking our fan page!';
}
else {
echo 'You have not liked our fan page! Like it now:';
?>
<iframe src="//www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2Fchillopedia&width&height=290&colorscheme=light&show_faces=true&header=true&stream=false&show_border=true&appId=1392604484339363" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:290px;" allowTransparency="true"></iframe> //replace this with your own Facebook like box code
<?php
}
} catch (FacebookApiException $e) {
$login_url = $facebook->getLoginUrl();
echo '<a href="' . $login_url . '">Please click here to login into your Facebook account.</a>';
error_log($e->getType());
error_log($e->getMessage());
}
} else {
$login_url = $facebook->getLoginUrl();
echo '<a href="' . $login_url . '">Please lick here to login into your Facebook account</a>';
}
?>
用户将点击&#34;请点击此处登录您的Facebook帐户。&#34;文本将其重定向到Facebook应用程序权限页面,一旦用户允许您的应用程序获得权限,代码将获取用户的数据,并且如果用户不喜欢您的粉丝页面,则会显示该框。